class DeviceState

Defined at line 30 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

Declare DeviceState. Will be defined in xhci-device-state.h

Public Methods

void DeviceState (uint32_t device_id, UsbXhci * hci)

Defined at line 32 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

void Disconnect ()

Defined at line 36 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

void SetDeviceInformation (uint8_t slot, uint8_t port, const std::optional<HubInfo> & hub)

Defined at line 38 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

bool IsValid ()

True if the device state has been initialized, false otherwise.

Defined at line 47 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

uint8_t GetPort ()

Defined at line 49 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

uint8_t GetSlot ()

Defined at line 51 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

uint16_t GetInterrupterTarget ()

Defined at line 53 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

std::optional<HubInfo> & GetHubLocked ()

Defined at line 55 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

std::optional<HubInfo> & GetHub ()

Defined at line 57 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

bool IsDisconnecting ()

Defined at line 62 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

Endpoint & GetEndpoint ()

Defined at line 64 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

Endpoint & GetEndpoint (uint8_t idx)

idx should correspond to XhciEndpointIndex

Defined at line 69 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

void ~DeviceState ()

Defined at line 73 of file ../../src/devices/usb/drivers/xhci/tests/test-xhci.cc

zx_status_t InitEndpoint (uint8_t ep_addr, EventRing * event_ring, fdf::MmioBuffer * mmio)

Defined at line 75 of file ../../src/devices/usb/drivers/xhci/tests/test-xhci.cc

std::unique_ptr<dma_buffer::PagedBuffer> & GetInputContext ()

Defined at line 76 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

std::unique_ptr<dma_buffer::PagedBuffer> & GetDeviceContext ()

Defined at line 80 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

fbl::Mutex & transaction_lock ()

Defined at line 89 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

void ResetHci ()

Used by xhci to break cyclic dependency during dtor.

Defined at line 94 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

uint32_t device_id ()

Defined at line 98 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.h

TRBPromise AddressDeviceCommand (UsbXhci * hci, uint8_t slot_id, uint8_t port_id, std::optional<HubInfo> hub_info, uint64_t * dcbaa, uint16_t interrupter_target, CommandRing * command_ring, fdf::MmioBuffer * mmio, bool bsr)

Fake implementations of DeviceState

Defined at line 167 of file ../../src/devices/usb/drivers/xhci/tests/xhci-endpoint-test.cc

void CreateInspectNode (inspect::Node node, uint16_t vendor_id, uint16_t product_id)

Defined at line 206 of file ../../src/devices/usb/drivers/xhci/xhci-device-state.cc