Skip to content

USB

Member TypeMember Name
uint8_tbitmap_request_type
enum usb_rq_coderequest
uint16_tvalue
union { uint16_t index; uint16_t offset; }None
uint16_tlength
Member TypeMember Name
uint8_tlength
uint8_ttype
uint16_tusb_num_bcd
uint8_tclass
uint8_tsubclass
uint8_tprotocol
uint8_tmax_packet_size
uint16_tvendor_id
uint16_tproduct_id
uint16_tdevice_num_bcd
uint8_tmanufacturer
uint8_tproduct
uint8_tserial_num
uint8_tnum_configs
Member TypeMember Name
uint8_tlength
uint8_ttype
uint8_tinterface_number
uint8_talternate_setting
uint8_tnum_endpoints
uint8_tclass
uint8_tsubclass
uint8_tprotocol
uint8_tinterface
Member TypeMember Name
uint8_tlength
uint8_tdescriptor_type
uint16_ttotal_length
uint8_tnum_interfaces
uint8_tconfiguration_value
uint8_tconfiguration
uint8_tbitmap_attributes
uint8_tmax_power
Member TypeMember Name
uint8_tlength
uint8_ttype
uint8_taddress
uint8_tattributes
uint16_tmax_packet_size
uint8_tinterval
Member TypeMember Name
struct usb_endpoint_descriptor*desc
uint8_ttype
uint8_tnumber
boolin
uint8_t*transfer_buffer
uint16_ttransfer_len
uint16_tmax_packet_size
uint8_taddress
uint8_tattributes
uint8_tinterval
void*hc_data
Member TypeMember Name
enum usb_status(*submit_control_transfer)(struct usb_request *)
enum usb_status(*submit_bulk_transfer)(struct usb_request *)
enum usb_status(*submit_interrupt_transfer)(struct usb_request *)
void(*reset_slot)(struct usb_device *dev)
enum usb_status(*configure_endpoint)(struct usb_device *dev)
void(*poll_ports)(struct usb_controller *)
Member TypeMember Name
enum usb_controller_typetype
struct usb_controller_opsops
void*driver_data
Member TypeMember Name
char*name
uint8_tclass_code
uint8_tsubclass
uint8_tprotocol
enum usb_status(*bringup)(struct usb_device *dev)
void(*teardown)(struct usb_device *dev)
void(*free)(struct usb_device *dev)
Member TypeMember Name
struct list_headhc_list
enum usb_dev_statusstatus
charmanufacturer[128]
charproduct[128]
charconfig_str[128]
uint8_taddress
uint8_tspeed
uint8_tport
void*slot
uint8_tmax_packet_size
struct usb_device_descriptor*descriptor
struct usb_config_descriptorconfig
struct usb_endpoint**endpoints
uint8_tnum_endpoints
struct usb_controller*host
struct usb_interface_descriptor**interfaces
uint8_tnum_interfaces
struct usb_driver*driver
void*driver_private
boolconfigured
refcount_trefcount
atomic_boolalive
void(*teardown)(struct usb_device *dev)
void(*free)(struct usb_device *dev)
Member TypeMember Name
struct usb_device*dev
struct usb_endpoint*ep
enum usb_transfer_typetype
struct usb_setup_packet*setup
void*buffer
size_tlength
enum usb_statusstatus
uint32_tflags
uint64_ttimeout_ns
void(*complete)(struct usb_request *)
void*context
booldirection_in
void*hc_priv
NameValue
USB_RQ_CODE_GET_STATUS0
USB_RQ_CODE_CLEAR_FEATURE1
USB_RQ_CODE_SET_FEATURE3
USB_RQ_CODE_SET_ADDR5
USB_RQ_CODE_GET_DESCRIPTOR6
USB_RQ_CODE_SET_DESCRIPTOR7
USB_RQ_CODE_GET_CONFIG8
USB_RQ_CODE_SET_CONFIG9
USB_RQ_CODE_GET_INTERFACE10
USB_RQ_CODE_SET_INTERFACE11
USB_RQ_CODE_SYNCH_FRAME12
NameValue
USB_CONTROLLER_UHCINone
USB_CONTROLLER_EHCINone
USB_CONTROLLER_XHCINone
NameValue
USB_TRANSFER_CONTROLNone
USB_TRANSFER_BULKNone
USB_TRANSFER_INTERRUPTNone
NameValue
USB_OK0
USB_ERR_STALLNone
USB_ERR_TIMEOUTNone
USB_ERR_DISCONNECTNone
USB_ERR_OVERFLOWNone
USB_ERR_CRCNone
USB_ERR_IONone
USB_ERR_PROTONone
USB_ERR_NO_DEVICENone
USB_ERR_CANCELLEDNone
USB_ERR_OOMNone
USB_ERR_INVALID_ARGUMENTNone
USB_ERR_NO_ENDPOINTNone
NameValue
USB_DEV_UNDEFNone
USB_DEV_DISCONNECTEDNone
USB_DEV_CONNECTEDNone
USB_DEV_ENABLEDNone
USB_DEV_RESETTINGNone
USB_DEV_ERRORNone