class Dwc3TestHelper

Defined at line 48 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

Public Methods

void HandleEp0TransferCompleteEvent (Dwc3 & drv, uint8_t ep_num)

Defined at line 52 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SimulateGhostTransferCompleteEvent (Dwc3 & drv, uint8_t ep_num)

Defined at line 60 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEp0TransferNotReadyEvent (Dwc3 & drv, uint8_t ep_num, uint32_t stage)

Defined at line 63 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0State (Dwc3 & drv, Dwc3::Ep0::State state)

Defined at line 66 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void Ep0Reset (Dwc3 & drv)

Defined at line 67 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void Ep0QueueSetup (Dwc3 & drv)

Defined at line 68 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

Dwc3::Ep0::State GetEp0State (Dwc3 & drv)

Defined at line 69 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

fuchsia_hardware_usb_descriptor::wire::UsbSpeed GetEp0CurSpeed (const Dwc3 & drv)

Defined at line 70 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0CurSpeed (Dwc3 & drv, fuchsia_hardware_usb_descriptor::wire::UsbSpeed speed)

Defined at line 73 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint64_t GetEp0SetupGeneration (const Dwc3 & drv)

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

void ResetUserEndpoints (Dwc3 & drv)

Defined at line 77 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void StopActiveTransfers (Dwc3 & drv)

Defined at line 78 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void WaitForAllUserEndpointsIdle (Dwc3 & drv, fit::callback<void (bool)> callback)

Parks `callback` behind the user-endpoint idle barrier exactly like HandleResetEvent() /

HandleConnectionDoneEvent() do, so a test can observe whether the barrier is released with

idle == true (NotifyEndpointIdle) or aborted with idle == false

(CancelAllEndpointIdleCallbacks).

Defined at line 83 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetDciDisconnectDrainStallDelay (Dwc3 & drv, zx::duration delay)

Shortens the DCI disconnect drain watchdog so a test can observe a stalled drain without

waiting for the production delay.

Defined at line 88 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint64_t GetDciDisconnectStallCount (const Dwc3 & drv)

Defined at line 91 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void EnableEp0 (Dwc3 & drv)

Defined at line 94 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

fuchsia_hardware_usb_policy::wire::DeviceState GetDeviceState (Dwc3 & drv)

Defined at line 98 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetPowerOn (Dwc3 & drv, bool power_on)

Defined at line 101 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool HasConnectionLease (const Dwc3 & drv)

Defined at line 102 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

fuchsia_hardware_usb_descriptor::UsbSpeed GetConnectionSpeed (const Dwc3 & drv)

Defined at line 103 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetConnectionSpeed (Dwc3 & drv, fuchsia_hardware_usb_descriptor::UsbSpeed speed)

Defined at line 106 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetDriverStopping (Dwc3 & drv, bool driver_stopping)

Defined at line 109 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetDeviceState (Dwc3 & drv, fuchsia_hardware_usb_policy::DeviceState state)

Defined at line 114 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

PlatformExtension * GetPlatformExtension (Dwc3 & drv)

Defined at line 117 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEvent (Dwc3 & drv, uint32_t event)

Defined at line 120 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdEpSetConfig (Dwc3 & drv, Dwc3::Endpoint & ep, bool modify)

Defined at line 121 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdEpStartTransfer (Dwc3 & drv, Dwc3::Endpoint & ep, zx_paddr_t trb_phys)

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

void CmdEpEndTransfer (Dwc3 & drv, Dwc3::Endpoint & ep)

Defined at line 127 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void ForceCmdEpEndTransfer (Dwc3 & drv, uint8_t ep_num)

Defined at line 128 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdEpSetStall (Dwc3 & drv, Dwc3::Endpoint & ep)

Defined at line 133 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdEpClearStall (Dwc3 & drv, Dwc3::Endpoint & ep)

Defined at line 134 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdStartNewConfig (Dwc3 & drv, Dwc3::Endpoint & ep, uint32_t rsrc_id_base)

Defined at line 135 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void CmdEpTransferConfig (Dwc3 & drv, Dwc3::Endpoint & ep)

Defined at line 138 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

zx::result<> InitFifo (Dwc3 & drv, uint8_t ep_num, bool cached)

Defined at line 139 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEpTransferCompleteEvent (Dwc3 & drv, uint8_t ep_num)

Defined at line 145 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEpTransferInProgressEvent (Dwc3 & drv, uint8_t ep_num)

Defined at line 153 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEpTransferStartedEvent (Dwc3 & drv, uint8_t ep_num, uint32_t rsrc_id)

Defined at line 161 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEpTransferNotReadyEvent (Dwc3 & drv, uint8_t ep_num, uint32_t stage)

Defined at line 164 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleEpTransferEndedEvent (Dwc3 & drv, uint8_t ep_num)

Defined at line 167 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void EpReset (Dwc3 & drv, Dwc3::Endpoint & ep)

Defined at line 170 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

zx_status_t ResetHw (Dwc3 & drv, bool is_resume)

Defined at line 171 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEnableSuspend (Dwc3 & drv, bool enable)

Defined at line 176 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool GetPowerOn (Dwc3 & drv)

Defined at line 181 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleIrq (Dwc3 & drv)

Defined at line 182 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsActive (Dwc3 & drv)

Defined at line 183 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

zx_status_t EpSetStall (Dwc3 & drv, Dwc3::Endpoint & ep, bool stall)

Defined at line 184 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void UserEpQueueNext (Dwc3 & drv, Dwc3::UserEndpoint & uep)

Defined at line 187 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void UserEpReset (Dwc3 & drv, Dwc3::UserEndpoint & uep)

Defined at line 188 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void RemoveRequests (Dwc3 & drv, Dwc3::UserEndpoint & uep, zx_status_t reason)

Defined at line 189 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetDeviceAddress (Dwc3 & drv, uint32_t address)

Defined at line 192 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsFifoEmpty (Dwc3 & drv)

Defined at line 193 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEpTransferState (Dwc3 & drv, uint8_t ep_num, TransferState state)

Defined at line 194 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

TransferState GetEpTransferState (Dwc3 & drv, uint8_t ep_num)

Defined at line 204 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEpRsrcId (Dwc3 & drv, uint8_t ep_num, uint32_t rsrc_id)

Defined at line 211 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool GetGotNotReady (Dwc3 & drv, uint8_t ep_num)

Defined at line 222 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetGotNotReady (Dwc3 & drv, uint8_t ep_num, bool got_not_ready)

Defined at line 230 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint32_t GetEpRsrcId (Dwc3 & drv, uint8_t ep_num)

Defined at line 241 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsXferIdle (Dwc3 & drv, uint8_t ep_num)

Defined at line 249 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsEpEnabled (Dwc3 & drv, uint8_t ep_num)

Defined at line 258 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

size_t GetEpQueuedTrbs (const Dwc3 & drv, uint8_t ep_num)

Defined at line 266 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

Dwc3::UserEndpoint * GetUserEndpoint (Dwc3 & drv, uint8_t ep_num)

Defined at line 274 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void AdvanceFifo (TrbFifo & fifo, size_t count)

Defined at line 277 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

size_t GetQueuedReqsSize (Dwc3 & drv, uint8_t ep_num)

Defined at line 283 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void EpSetConfig (Dwc3 & drv, Dwc3::Endpoint & ep, bool enable)

Defined at line 291 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void EpEnable (Dwc3 & drv, Dwc3::Endpoint & ep, bool enable)

Defined at line 294 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

async_dispatcher_t * GetDispatcher (Dwc3 & drv)

Defined at line 295 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetControllerStarted (Dwc3 & drv, bool started)

Defined at line 296 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleIrq (Dwc3 & drv, async_dispatcher_t * dispatcher, async::IrqBase * irq, zx_status_t status, const zx_packet_interrupt_t * interrupt)

Defined at line 297 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetCurSetup (Dwc3 & drv, const fdescriptor::wire::UsbSetup & setup)

Defined at line 301 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void * GetEp0BufferVirt (Dwc3 & drv)

Defined at line 304 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

size_t GetEp0BufferSize (Dwc3 & drv)

Defined at line 305 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool GetEp0BufferEnableCache (Dwc3 & drv)

Defined at line 306 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

dma_buffer::CacheOptions GetEp0BufferCacheOptions (Dwc3 & drv)

Defined at line 307 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

zx::unowned_vmo GetEp0BufferVmo (Dwc3 & drv)

Defined at line 310 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void WriteEp0Buffer (Dwc3 & drv, const void * src, size_t offset, size_t size)

Defined at line 311 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void ReadEp0Buffer (Dwc3 & drv, void * dest, size_t offset, size_t size)

Note: dma_buffer::Buffer::Read takes (offset, length, dest), unlike Write which takes (src,

offset, length).

Defined at line 318 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsEp0OutStalled (Dwc3 & drv)

Defined at line 323 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsEp0InStalled (Dwc3 & drv)

Defined at line 324 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0OutEnabled (Dwc3 & drv, bool enabled)

Defined at line 325 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0InEnabled (Dwc3 & drv, bool enabled)

Defined at line 326 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0CurTransferLen (Dwc3 & drv, size_t len)

Defined at line 327 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

size_t GetEp0CurTransferLen (const Dwc3 & drv)

Defined at line 328 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SetEp0MaxPacketSize (Dwc3 & drv, uint16_t max_packet_size)

Defined at line 329 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint16_t GetEp0OutMaxPacketSize (const Dwc3 & drv)

Defined at line 333 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint64_t GetEp0OutTotalBytes (const Dwc3 & drv)

Defined at line 334 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint64_t GetEp0InTotalBytes (const Dwc3 & drv)

Defined at line 335 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

dwc3_trb_t * GetCurrentReadTrb (Dwc3 & drv)

Defined at line 336 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void PushTrbToSharedFifo (Dwc3 & drv, const dwc3_trb_t & trb)

Defined at line 337 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void HandleResetEvent (Dwc3 & drv)

Defined at line 347 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint8_t GetEp0TestMode (const Dwc3 & drv)

Defined at line 348 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

uint64_t GetConnectFailures (const Dwc3 & drv)

Defined at line 349 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

bool IsSharedFifoEmpty (Dwc3 & drv)

Defined at line 351 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void BindDciInterface (Dwc3 & drv, fidl::ClientEnd<fuchsia_hardware_usb_dci::UsbDciInterface> client)

Defined at line 353 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SimulateSetupReceived (Dwc3 & drv, const fdescriptor::wire::UsbSetup & setup)

Simulation constructs for EP0

Defined at line 359 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SimulateDataOutPhase (Dwc3 & drv, uint32_t received_len)

Defined at line 369 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SimulateDataInPhase (Dwc3 & drv)

Defined at line 381 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h

void SimulateStatusPhase (Dwc3 & drv, bool is_in)

Defined at line 388 of file ../../src/devices/usb/drivers/dwc3/dwc3-test-fixture.h