aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGreg Suarez <gpsuarez2512@gmail.com>2012-10-08 14:30:23 +0200
committerBjørn Mork <bjorn@mork.no>2012-10-09 16:25:13 +0200
commit96dbdb1e30e4dee76562ebd49fc0888d5621e2e5 (patch)
tree5d556267e78edb12f0cacee65e25defdc0ab519a /include
parent6ac9fa6ef19a4c1392654bae34b8553b98040051 (diff)
net: cdc_mbim: adding MBIM driver
Implementing a basic MBIM driver supporting only IPS sessions with SessionID 0. Signed-off-by: Bjørn Mork <bjorn@mork.no>
Diffstat (limited to 'include')
-rw-r--r--include/linux/usb/cdc_ncm.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/usb/cdc_ncm.h b/include/linux/usb/cdc_ncm.h
index e7ef5ce37be..fde2cc02b5f 100644
--- a/include/linux/usb/cdc_ncm.h
+++ b/include/linux/usb/cdc_ncm.h
@@ -36,6 +36,12 @@
* SUCH DAMAGE.
*/
+#define CDC_NCM_COMM_ALTSETTING_NCM 0
+#define CDC_NCM_COMM_ALTSETTING_MBIM 1
+
+#define CDC_NCM_DATA_ALTSETTING_NCM 1
+#define CDC_NCM_DATA_ALTSETTING_MBIM 2
+
/* CDC NCM subclass 3.2.1 */
#define USB_CDC_NCM_NDP16_LENGTH_MIN 0x10
@@ -74,6 +80,10 @@
(sizeof(struct usb_cdc_ncm_ndp16) + \
(CDC_NCM_DPT_DATAGRAMS_MAX + 1) * sizeof(struct usb_cdc_ncm_dpe16))
+#define cdc_ncm_comm_intf_is_mbim(x) ((x)->desc.bInterfaceSubClass == USB_CDC_SUBCLASS_MBIM && \
+ (x)->desc.bInterfaceProtocol == USB_CDC_PROTO_NONE)
+#define cdc_ncm_data_intf_is_mbim(x) ((x)->desc.bInterfaceProtocol == USB_CDC_MBIM_PROTO_NTB)
+
struct cdc_ncm_ctx {
struct usb_cdc_ncm_ntb_parameters ncm_parm;
struct hrtimer tx_timer;