class UsbPeripheral
Defined at line 93 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
This is the main class for the USB peripheral role driver.
It binds against the USB DCI driver device and manages a list of UsbFunction devices,
one for each USB function in the peripheral role configuration.
Public Members
static basic_string_view kDriverName
static basic_string_view kChildNodeName
Public Methods
void UsbPeripheral (fdf::DriverStartArgs start_args, fdf::UnownedSynchronizedDispatcher driver_dispatcher)
Defined at line 270 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
zx::result<> Start ()
fdf::DriverBase implementation.
Defined at line 90 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
void PrepareStop (fdf::PrepareStopCompleter completer)
Defined at line 1030 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t UsbDciCancelAll (uint8_t ep_address)
Defined at line 40 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
void SetConfiguration (SetConfigurationRequestView request, SetConfigurationCompleter::Sync & completer)
fuchsia_hardware_usb_peripheral::Device protocol implementation.
Defined at line 924 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
void ClearFunctions (ClearFunctionsCompleter::Sync & completer)
Defined at line 1014 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
void SetStateChangeListener (SetStateChangeListenerRequestView request, SetStateChangeListenerCompleter::Sync & completer)
Defined at line 1022 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t SetDeviceDescriptor (DeviceDescriptor desc)
Defined at line 976 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t AllocInterface (size_t function_index, uint8_t * out_intf_num)
Defined at line 465 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t AllocEndpoint (size_t function_index, uint8_t direction, uint8_t * out_address)
Defined at line 483 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t AllocStringDesc (std::string desc, uint8_t * out_index)
Defined at line 260 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t ValidateFunction (size_t function_index, void * descriptors, size_t length, uint8_t * out_num_interfaces)
Defined at line 276 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
zx_status_t FunctionRegistered ()
Defined at line 355 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
void FunctionCleared ()
void UsbPeripheralRequestQueue (usb_request_t * usb_request, const usb_request_complete_callback_t * complete_cb)
Defined at line 70 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
const ddk::UsbDciProtocolClient & dci ()
Defined at line 124 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
const fidl::WireSyncClient<fuchsia_hardware_usb_dci::UsbDci> & dci_new ()
Defined at line 125 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
size_t ParentRequestSize ()
Defined at line 129 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
zx_status_t ConnectToEndpoint (uint8_t ep_address, fidl::ServerEnd<fuchsia_hardware_usb_endpoint::Endpoint> ep)
Defined at line 133 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
const usb_device_descriptor_t & device_desc ()
Defined at line 146 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.h
zx_status_t DeviceStateChanged ()
Defined at line 738 of file ../../src/devices/usb/drivers/usb-peripheral/usb-peripheral.cc
Friends
class UsbDciInterfaceServer