15 #define USB_CLASS_CDC 2 18 #define CDC_SEND_ENCAPSULATED_COMMAND \ 19 ( USB_DIR_OUT | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \ 20 USB_REQUEST_TYPE ( 0x00 ) ) 23 #define CDC_GET_ENCAPSULATED_RESPONSE \ 24 ( USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \ 25 USB_REQUEST_TYPE ( 0x01 ) ) 38 #define CDC_SUBTYPE_UNION 6 41 #define CDC_SUBTYPE_ETHERNET 15 44 #define CDC_RESPONSE_AVAILABLE \ 45 ( USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \ 46 USB_REQUEST_TYPE ( 0x01 ) ) 49 #define CDC_NETWORK_CONNECTION \ 50 ( USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \ 51 USB_REQUEST_TYPE ( 0x00 ) ) 54 #define CDC_CONNECTION_SPEED_CHANGE \ 55 ( USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE | \ 56 USB_REQUEST_TYPE ( 0x2a ) )
FILE_LICENCE(GPL2_OR_LATER_OR_UBDL)
uint32_t down
Downlink bit rate, in bits per second.
uint32_t up
Uplink bit rate, in bits per second.
int usb_control(struct usb_device *usb, unsigned int request, unsigned int value, unsigned int index, void *data, size_t len)
Issue USB control transaction.
A USB interface descriptor.
static int cdc_get_encapsulated_response(struct usb_device *usb, unsigned int interface, void *data, size_t len)
Get encapsulated response.
struct usb_descriptor_header header
Descriptor header.
Union functional descriptor.
static int cdc_send_encapsulated_command(struct usb_device *usb, unsigned int interface, void *data, size_t len)
Send encapsulated command.
uint8_t subtype
Descriptor subtype.
struct cdc_union_descriptor * cdc_union_descriptor(struct usb_configuration_descriptor *config, struct usb_interface_descriptor *interface)
Locate CDC union functional descriptor.
#define CDC_SEND_ENCAPSULATED_COMMAND
Send encapsulated command.
A USB configuration descriptor.
Universal Serial Bus (USB)
uint8_t data[48]
Additional event data.
Connection speed change notification.
#define CDC_GET_ENCAPSULATED_RESPONSE
Get encapsulated response.