class UsbInterface
Defined at line 28 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
This class represents a USB interface in a composite device.
Public Methods
zx::result<fidl::ClientEnd<fuchsia_io::Directory>> Create (zx_device_t * parent, UsbComposite * composite, const ddk::UsbProtocolClient & usb, fidl::ClientEnd<fuchsia_hardware_usb::Usb> usb_new, const usb_interface_descriptor_t * interface_desc, size_t desc_length, async_dispatcher_t * dispatcher, std::unique_ptr<UsbInterface> * out_interface)
Defined at line 20 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void UsbInterface (zx_device_t * parent, UsbComposite * composite, const ddk::UsbProtocolClient & usb, fidl::ClientEnd<fuchsia_hardware_usb::Usb> usb_new, async_dispatcher_t * dispatcher)
Defined at line 33 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
void ConnectToEndpoint (ConnectToEndpointRequest & request, ConnectToEndpointCompleter::Sync & completer)
fuchsia_hardware_usb_new::Usb protocol implementation.
Defined at line 58 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
zx::result<fidl::ClientEnd<fuchsia_io::Directory>> Create (zx_device_t * parent, UsbComposite * composite, const ddk::UsbProtocolClient & usb, fidl::ClientEnd<fuchsia_hardware_usb::Usb> usb_new, const usb_interface_assoc_descriptor_t * assoc_desc, size_t desc_length, async_dispatcher_t * dispatcher, std::unique_ptr<UsbInterface> * out_interface)
Defined at line 64 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
uint8_t usb_class ()
Defined at line 108 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
uint8_t usb_subclass ()
Defined at line 109 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
uint8_t usb_protocol ()
Defined at line 110 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.h
zx_status_t DdkGetProtocol (uint32_t proto_id, void * out)
Device protocol implementation.
Defined at line 139 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void DdkUnbind (ddk::UnbindTxn txn)
Defined at line 158 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void DdkRelease ()
Defined at line 163 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbControlOut (uint8_t request_type, uint8_t request, uint16_t value, uint16_t index, int64_t timeout, const uint8_t * write_buffer, size_t write_size)
USB protocol implementation.
Defined at line 230 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbControlIn (uint8_t request_type, uint8_t request, uint16_t value, uint16_t index, int64_t timeout, uint8_t * out_read_buffer, size_t read_size, size_t * out_read_actual)
Defined at line 236 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void UsbRequestQueue (usb_request_t * usb_request, const usb_request_complete_callback_t * complete_cb)
Defined at line 243 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
usb_speed_t UsbGetSpeed ()
Defined at line 248 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbSetInterface (uint8_t interface_number, uint8_t alt_setting)
Defined at line 250 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
uint8_t UsbGetConfiguration ()
Defined at line 254 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbSetConfiguration (uint8_t configuration)
Defined at line 256 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbEnableEndpoint (const usb_endpoint_descriptor_t * ep_desc, const usb_ss_ep_comp_descriptor_t * ss_com_desc, bool enable)
Defined at line 260 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbResetEndpoint (uint8_t ep_address)
Defined at line 266 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbResetDevice ()
Defined at line 270 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
size_t UsbGetMaxTransferSize (uint8_t ep_address)
Defined at line 272 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
uint32_t UsbGetDeviceId ()
Defined at line 276 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void UsbGetDeviceDescriptor (usb_device_descriptor_t * out_desc)
Defined at line 278 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbGetConfigurationDescriptorLength (uint8_t configuration, size_t * out_length)
Defined at line 282 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbGetConfigurationDescriptor (uint8_t configuration, uint8_t * out_desc_buffer, size_t desc_size, size_t * out_desc_actual)
Defined at line 287 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
size_t UsbGetDescriptorsLength ()
Defined at line 294 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
void UsbGetDescriptors (uint8_t * out_descs_buffer, size_t descs_size, size_t * out_descs_actual)
Defined at line 296 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbGetStringDescriptor (uint8_t desc_id, uint16_t lang_id, uint16_t * out_lang_id, uint8_t * out_string_buffer, size_t string_size, size_t * out_string_actual)
Defined at line 332 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbCancelAll (uint8_t ep_address)
Defined at line 339 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
uint64_t UsbGetCurrentFrame ()
Defined at line 341 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
size_t UsbGetRequestSize ()
Defined at line 343 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
size_t UsbCompositeGetAdditionalDescriptorLength ()
USB composite protocol implementation.
Defined at line 306 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbCompositeGetAdditionalDescriptorList (uint8_t * out_desc_list, size_t desc_count, size_t * out_desc_actual)
Defined at line 325 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t UsbCompositeClaimInterface (const usb_interface_descriptor_t * desc, uint32_t length)
Defined at line 345 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
bool ContainsInterface (uint8_t interface_id)
Defined at line 369 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
zx_status_t SetAltSetting (uint8_t interface_id, uint8_t alt_setting)
Defined at line 384 of file ../../src/devices/usb/drivers/usb-composite/usb-interface.cc
Friends
template <auto* descriptors>
class UsbInterfaceTest