class Dwc3

Defined at line 71 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

Some platforms support fully powering down the dwc3 core. When powered down, accessing the MMIO

will cause the system to crash or lock up. power_on_ indicates whether or not the core is powered

down, and therefore whether or not it is safe to access the MMIO.

UsbDci, Controller, or Endpoint FIDL methods may be safely called at any time regardless of

the power state. Other methods must not be called when powered down, unless indicated by comments

below.

Public Methods

void Dwc3 ()

Defined at line 76 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

const std::shared_ptr<fdf::Namespace> & incoming ()

Defined at line 84 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

inspect::ComponentInspector & inspector ()

Defined at line 90 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

std::optional<fidl::ServerEnd<fuchsia_power_broker::ElementRunner>> take_power_element_runner ()

Defined at line 92 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_usb_dci::UsbDci> metadata, fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 124 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_hardware_usb_policy::Controller> metadata, fidl::UnknownMethodCompleter::Sync & completer)

Defined at line 132 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

bool AllowEnqueueManyTRBs (fuchsia_hardware_usb_descriptor::EndpointType ep_type)

Gating flag to enable enqueueing multiple TRBs at once for a given endpoint

type.

Defined at line 140 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

bool poll_end_xfer ()

For testing.

Defined at line 146 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

void SetEnableEnqueueManyTrbs (bool enable)

Defined at line 147 of file ../../src/devices/usb/drivers/dwc3/dwc3.h

void ~Dwc3 ()

Defined at line 1174 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

zx::result<> Start (fdf::DriverContext context)

Defined at line 494 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void Stop (fdf::StopCompleter completer)

fdf::DriverBase2 provides an asynchronous Stop method. Synchronous cleanup should be performed

in the destructor.

Defined at line 1192 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void Suspend (fdf_power::SuspendCompleter completer)

Defined at line 1201 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void Resume (fdf_power::ResumeCompleter completer)

Defined at line 1207 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

bool SuspendEnabled ()

Defined at line 1213 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void ConnectToEndpoint (ConnectToEndpointRequest & request, ConnectToEndpointCompleter::Sync & completer)

Defined at line 1218 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void SetInterface (SetInterfaceRequest & request, SetInterfaceCompleter::Sync & completer)

Defined at line 1231 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void StartController (StartControllerCompleter::Sync & completer)

Defined at line 1249 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void StopController (StopControllerCompleter::Sync & completer)

Defined at line 1260 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void ConfigureEndpoint (ConfigureEndpointRequest & request, ConfigureEndpointCompleter::Sync & completer)

Defined at line 1280 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void DisableEndpoint (DisableEndpointRequest & request, DisableEndpointCompleter::Sync & completer)

Defined at line 1365 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void EndpointSetStall (EndpointSetStallRequest & request, EndpointSetStallCompleter::Sync & completer)

Defined at line 1387 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void EndpointClearStall (EndpointClearStallRequest & request, EndpointClearStallCompleter::Sync & completer)

Defined at line 1410 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void CancelAll (CancelAllRequest & request, CancelAllCompleter::Sync & completer)

Defined at line 1434 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void GetHardwareInfo (GetHardwareInfoCompleter::Sync & completer)

Defined at line 1700 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void AllocEndpoint (AllocEndpointRequest & request, AllocEndpointCompleter::Sync & completer)

Defined at line 1773 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void FreeEndpoint (FreeEndpointRequest & request, FreeEndpointCompleter::Sync & completer)

Defined at line 1777 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

void WatchDeviceState (WatchDeviceStateCompleter::Sync & completer)

fuchsia_hardware_usb_policy::Controller protocol implementation.

Defined at line 1660 of file ../../src/devices/usb/drivers/dwc3/dwc3.cc

Friends

class Dwc3TestHelper
template <bool manage_lifetime, typename gtest_base>
class TestFixture
class Dwc3Metrics
class formatter
class formatter