usb: gadget: MBIM function driver for QCOM chipsets
This driver implements Mobile Broadband Interface Model protocol. Control messages are transferred through QBI module running in user space and communicating with mbim using file operations interface android_mbim. Data is transferred on SPS, Bam-to-Bam. Change-Id: Ifc4b3f7e21b1a0dac377af272f9ae922ec9c7e2e Signed-off-by: Anna Perel <aperel@codeaurora.org>
This commit is contained in:
@@ -53,6 +53,7 @@
|
||||
#define USB_CDC_DMM_TYPE 0x14
|
||||
#define USB_CDC_OBEX_TYPE 0x15
|
||||
#define USB_CDC_NCM_TYPE 0x1a
|
||||
#define USB_CDC_MBB_TYPE 0x1b /* mbb_desc */
|
||||
|
||||
/* "Header Functional Descriptor" from CDC spec 5.2.3.1 */
|
||||
struct usb_cdc_header_desc {
|
||||
@@ -187,6 +188,21 @@ struct usb_cdc_ncm_desc {
|
||||
__le16 bcdNcmVersion;
|
||||
__u8 bmNetworkCapabilities;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
/* "MBIM Functional Descriptor" */
|
||||
struct usb_cdc_mbb_desc {
|
||||
__u8 bLength;
|
||||
__u8 bDescriptorType;
|
||||
__u8 bDescriptorSubType;
|
||||
|
||||
__le16 bcdMbbVersion;
|
||||
__le16 wMaxControlMessage;
|
||||
__u8 bNumberFilters;
|
||||
__u8 bMaxFilterSize;
|
||||
__le16 wMaxSegmentSize;
|
||||
__u8 bmNetworkCapabilities;
|
||||
} __packed;
|
||||
|
||||
/*-------------------------------------------------------------------------*/
|
||||
|
||||
/*
|
||||
@@ -201,6 +217,7 @@ struct usb_cdc_ncm_desc {
|
||||
|
||||
#define USB_CDC_SEND_ENCAPSULATED_COMMAND 0x00
|
||||
#define USB_CDC_GET_ENCAPSULATED_RESPONSE 0x01
|
||||
#define USB_CDC_RESET_FUNCTION 0x05
|
||||
#define USB_CDC_REQ_SET_LINE_CODING 0x20
|
||||
#define USB_CDC_REQ_GET_LINE_CODING 0x21
|
||||
#define USB_CDC_REQ_SET_CONTROL_LINE_STATE 0x22
|
||||
|
||||
Reference in New Issue
Block a user