blob: 698d9ecb02e942153befca78a90981abccfb72fc [file] [log] [blame]
Ben Cheng655a7c02013-10-16 16:09:24 -07001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 *** To edit the content of this header, modify the corresponding
11 *** source file (e.g. under external/kernel-headers/original/) then
12 *** run bionic/libc/kernel/tools/update_all.py
13 ***
14 *** Any manual change here will be lost the next time this script will
15 *** be run. You've been warned!
16 ***
17 ****************************************************************************
18 ****************************************************************************/
19#ifndef __LINUX_USB_CDC_H
20#define __LINUX_USB_CDC_H
21#include <linux/types.h>
22#define USB_CDC_SUBCLASS_ACM 0x02
23/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24#define USB_CDC_SUBCLASS_ETHERNET 0x06
25#define USB_CDC_SUBCLASS_WHCM 0x08
26#define USB_CDC_SUBCLASS_DMM 0x09
27#define USB_CDC_SUBCLASS_MDLM 0x0a
28/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29#define USB_CDC_SUBCLASS_OBEX 0x0b
30#define USB_CDC_SUBCLASS_EEM 0x0c
31#define USB_CDC_SUBCLASS_NCM 0x0d
32#define USB_CDC_SUBCLASS_MBIM 0x0e
33/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34#define USB_CDC_PROTO_NONE 0
35#define USB_CDC_ACM_PROTO_AT_V25TER 1
36#define USB_CDC_ACM_PROTO_AT_PCCA101 2
37#define USB_CDC_ACM_PROTO_AT_PCCA101_WAKE 3
38/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39#define USB_CDC_ACM_PROTO_AT_GSM 4
40#define USB_CDC_ACM_PROTO_AT_3G 5
41#define USB_CDC_ACM_PROTO_AT_CDMA 6
42#define USB_CDC_ACM_PROTO_VENDOR 0xff
43/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44#define USB_CDC_PROTO_EEM 7
45#define USB_CDC_NCM_PROTO_NTB 1
46#define USB_CDC_MBIM_PROTO_NTB 2
47#define USB_CDC_HEADER_TYPE 0x00
48/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49#define USB_CDC_CALL_MANAGEMENT_TYPE 0x01
50#define USB_CDC_ACM_TYPE 0x02
51#define USB_CDC_UNION_TYPE 0x06
52#define USB_CDC_COUNTRY_TYPE 0x07
53/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54#define USB_CDC_NETWORK_TERMINAL_TYPE 0x0a
55#define USB_CDC_ETHERNET_TYPE 0x0f
56#define USB_CDC_WHCM_TYPE 0x11
57#define USB_CDC_MDLM_TYPE 0x12
58/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59#define USB_CDC_MDLM_DETAIL_TYPE 0x13
60#define USB_CDC_DMM_TYPE 0x14
61#define USB_CDC_OBEX_TYPE 0x15
62#define USB_CDC_NCM_TYPE 0x1a
63/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64#define USB_CDC_MBIM_TYPE 0x1b
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070065#define USB_CDC_MBIM_EXTENDED_TYPE 0x1c
Ben Cheng655a7c02013-10-16 16:09:24 -070066struct usb_cdc_header_desc {
67 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -070068/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070069 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -070070 __u8 bDescriptorSubType;
71 __le16 bcdCDC;
72} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -070073/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070074struct usb_cdc_call_mgmt_descriptor {
Ben Cheng655a7c02013-10-16 16:09:24 -070075 __u8 bLength;
76 __u8 bDescriptorType;
77 __u8 bDescriptorSubType;
Ben Cheng655a7c02013-10-16 16:09:24 -070078/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070079 __u8 bmCapabilities;
Ben Cheng655a7c02013-10-16 16:09:24 -070080#define USB_CDC_CALL_MGMT_CAP_CALL_MGMT 0x01
81#define USB_CDC_CALL_MGMT_CAP_DATA_INTF 0x02
82 __u8 bDataInterface;
Ben Cheng655a7c02013-10-16 16:09:24 -070083/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070084} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -070085struct usb_cdc_acm_descriptor {
86 __u8 bLength;
87 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -070088/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070089 __u8 bDescriptorSubType;
Ben Cheng655a7c02013-10-16 16:09:24 -070090 __u8 bmCapabilities;
91} __attribute__ ((packed));
92#define USB_CDC_COMM_FEATURE 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -070093/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070094#define USB_CDC_CAP_LINE 0x02
Ben Cheng655a7c02013-10-16 16:09:24 -070095#define USB_CDC_CAP_BRK 0x04
96#define USB_CDC_CAP_NOTIFY 0x08
97struct usb_cdc_union_desc {
Ben Cheng655a7c02013-10-16 16:09:24 -070098/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -070099 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700100 __u8 bDescriptorType;
101 __u8 bDescriptorSubType;
102 __u8 bMasterInterface0;
Ben Cheng655a7c02013-10-16 16:09:24 -0700103/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700104 __u8 bSlaveInterface0;
Ben Cheng655a7c02013-10-16 16:09:24 -0700105} __attribute__ ((packed));
106struct usb_cdc_country_functional_desc {
107 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700108/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700109 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700110 __u8 bDescriptorSubType;
111 __u8 iCountryCodeRelDate;
112 __le16 wCountyCode0;
Ben Cheng655a7c02013-10-16 16:09:24 -0700113/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700114} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700115struct usb_cdc_network_terminal_desc {
116 __u8 bLength;
117 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700118/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700119 __u8 bDescriptorSubType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700120 __u8 bEntityId;
121 __u8 iName;
122 __u8 bChannelIndex;
Ben Cheng655a7c02013-10-16 16:09:24 -0700123/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700124 __u8 bPhysicalInterface;
Ben Cheng655a7c02013-10-16 16:09:24 -0700125} __attribute__ ((packed));
126struct usb_cdc_ether_desc {
127 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700128/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700129 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700130 __u8 bDescriptorSubType;
131 __u8 iMACAddress;
132 __le32 bmEthernetStatistics;
Ben Cheng655a7c02013-10-16 16:09:24 -0700133/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700134 __le16 wMaxSegmentSize;
Ben Cheng655a7c02013-10-16 16:09:24 -0700135 __le16 wNumberMCFilters;
136 __u8 bNumberPowerFilters;
137} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700138/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700139struct usb_cdc_dmm_desc {
Ben Cheng655a7c02013-10-16 16:09:24 -0700140 __u8 bFunctionLength;
141 __u8 bDescriptorType;
142 __u8 bDescriptorSubtype;
Ben Cheng655a7c02013-10-16 16:09:24 -0700143/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700144 __u16 bcdVersion;
Ben Cheng655a7c02013-10-16 16:09:24 -0700145 __le16 wMaxCommand;
146} __attribute__ ((packed));
147struct usb_cdc_mdlm_desc {
Ben Cheng655a7c02013-10-16 16:09:24 -0700148/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700149 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700150 __u8 bDescriptorType;
151 __u8 bDescriptorSubType;
152 __le16 bcdVersion;
Ben Cheng655a7c02013-10-16 16:09:24 -0700153/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700154 __u8 bGUID[16];
Ben Cheng655a7c02013-10-16 16:09:24 -0700155} __attribute__ ((packed));
156struct usb_cdc_mdlm_detail_desc {
157 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700158/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700159 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700160 __u8 bDescriptorSubType;
161 __u8 bGuidDescriptorType;
162 __u8 bDetailData[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700163/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700164} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700165struct usb_cdc_obex_desc {
166 __u8 bLength;
167 __u8 bDescriptorType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700168/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700169 __u8 bDescriptorSubType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700170 __le16 bcdVersion;
171} __attribute__ ((packed));
172struct usb_cdc_ncm_desc {
Ben Cheng655a7c02013-10-16 16:09:24 -0700173/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700174 __u8 bLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700175 __u8 bDescriptorType;
176 __u8 bDescriptorSubType;
177 __le16 bcdNcmVersion;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700178/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179 __u8 bmNetworkCapabilities;
180} __attribute__ ((packed));
181struct usb_cdc_mbim_desc {
182 __u8 bLength;
183/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 __u8 bDescriptorType;
185 __u8 bDescriptorSubType;
186 __le16 bcdMBIMVersion;
187 __le16 wMaxControlMessage;
188/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189 __u8 bNumberFilters;
190 __u8 bMaxFilterSize;
191 __le16 wMaxSegmentSize;
Ben Cheng655a7c02013-10-16 16:09:24 -0700192 __u8 bmNetworkCapabilities;
193/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
194} __attribute__ ((packed));
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700195struct usb_cdc_mbim_extended_desc {
Ben Cheng655a7c02013-10-16 16:09:24 -0700196 __u8 bLength;
197 __u8 bDescriptorType;
198/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
199 __u8 bDescriptorSubType;
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700200 __le16 bcdMBIMExtendedVersion;
201 __u8 bMaxOutstandingCommandMessages;
202 __le16 wMTU;
Ben Cheng655a7c02013-10-16 16:09:24 -0700203/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Ben Cheng655a7c02013-10-16 16:09:24 -0700204} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700205#define USB_CDC_SEND_ENCAPSULATED_COMMAND 0x00
206#define USB_CDC_GET_ENCAPSULATED_RESPONSE 0x01
207#define USB_CDC_REQ_SET_LINE_CODING 0x20
Ben Cheng655a7c02013-10-16 16:09:24 -0700208/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700209#define USB_CDC_REQ_GET_LINE_CODING 0x21
Ben Cheng655a7c02013-10-16 16:09:24 -0700210#define USB_CDC_REQ_SET_CONTROL_LINE_STATE 0x22
211#define USB_CDC_REQ_SEND_BREAK 0x23
212#define USB_CDC_SET_ETHERNET_MULTICAST_FILTERS 0x40
Ben Cheng655a7c02013-10-16 16:09:24 -0700213/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700214#define USB_CDC_SET_ETHERNET_PM_PATTERN_FILTER 0x41
Ben Cheng655a7c02013-10-16 16:09:24 -0700215#define USB_CDC_GET_ETHERNET_PM_PATTERN_FILTER 0x42
216#define USB_CDC_SET_ETHERNET_PACKET_FILTER 0x43
217#define USB_CDC_GET_ETHERNET_STATISTIC 0x44
Ben Cheng655a7c02013-10-16 16:09:24 -0700218/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700219#define USB_CDC_GET_NTB_PARAMETERS 0x80
Ben Cheng655a7c02013-10-16 16:09:24 -0700220#define USB_CDC_GET_NET_ADDRESS 0x81
221#define USB_CDC_SET_NET_ADDRESS 0x82
222#define USB_CDC_GET_NTB_FORMAT 0x83
Ben Cheng655a7c02013-10-16 16:09:24 -0700223/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700224#define USB_CDC_SET_NTB_FORMAT 0x84
Ben Cheng655a7c02013-10-16 16:09:24 -0700225#define USB_CDC_GET_NTB_INPUT_SIZE 0x85
226#define USB_CDC_SET_NTB_INPUT_SIZE 0x86
227#define USB_CDC_GET_MAX_DATAGRAM_SIZE 0x87
Ben Cheng655a7c02013-10-16 16:09:24 -0700228/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700229#define USB_CDC_SET_MAX_DATAGRAM_SIZE 0x88
Ben Cheng655a7c02013-10-16 16:09:24 -0700230#define USB_CDC_GET_CRC_MODE 0x89
231#define USB_CDC_SET_CRC_MODE 0x8a
232struct usb_cdc_line_coding {
Ben Cheng655a7c02013-10-16 16:09:24 -0700233/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700234 __le32 dwDTERate;
Ben Cheng655a7c02013-10-16 16:09:24 -0700235 __u8 bCharFormat;
236#define USB_CDC_1_STOP_BITS 0
237#define USB_CDC_1_5_STOP_BITS 1
Ben Cheng655a7c02013-10-16 16:09:24 -0700238/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700239#define USB_CDC_2_STOP_BITS 2
Ben Cheng655a7c02013-10-16 16:09:24 -0700240 __u8 bParityType;
241#define USB_CDC_NO_PARITY 0
242#define USB_CDC_ODD_PARITY 1
Ben Cheng655a7c02013-10-16 16:09:24 -0700243/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700244#define USB_CDC_EVEN_PARITY 2
Ben Cheng655a7c02013-10-16 16:09:24 -0700245#define USB_CDC_MARK_PARITY 3
246#define USB_CDC_SPACE_PARITY 4
247 __u8 bDataBits;
Ben Cheng655a7c02013-10-16 16:09:24 -0700248/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700249} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700250#define USB_CDC_PACKET_TYPE_PROMISCUOUS (1 << 0)
251#define USB_CDC_PACKET_TYPE_ALL_MULTICAST (1 << 1)
252#define USB_CDC_PACKET_TYPE_DIRECTED (1 << 2)
Ben Cheng655a7c02013-10-16 16:09:24 -0700253/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700254#define USB_CDC_PACKET_TYPE_BROADCAST (1 << 3)
Ben Cheng655a7c02013-10-16 16:09:24 -0700255#define USB_CDC_PACKET_TYPE_MULTICAST (1 << 4)
256#define USB_CDC_NOTIFY_NETWORK_CONNECTION 0x00
257#define USB_CDC_NOTIFY_RESPONSE_AVAILABLE 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -0700258/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700259#define USB_CDC_NOTIFY_SERIAL_STATE 0x20
Ben Cheng655a7c02013-10-16 16:09:24 -0700260#define USB_CDC_NOTIFY_SPEED_CHANGE 0x2a
261struct usb_cdc_notification {
262 __u8 bmRequestType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700263/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700264 __u8 bNotificationType;
Ben Cheng655a7c02013-10-16 16:09:24 -0700265 __le16 wValue;
266 __le16 wIndex;
267 __le16 wLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700268/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700269} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700270struct usb_cdc_speed_change {
271 __le32 DLBitRRate;
272 __le32 ULBitRate;
Ben Cheng655a7c02013-10-16 16:09:24 -0700273/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700274} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700275struct usb_cdc_ncm_ntb_parameters {
276 __le16 wLength;
277 __le16 bmNtbFormatsSupported;
Ben Cheng655a7c02013-10-16 16:09:24 -0700278/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700279 __le32 dwNtbInMaxSize;
Ben Cheng655a7c02013-10-16 16:09:24 -0700280 __le16 wNdpInDivisor;
281 __le16 wNdpInPayloadRemainder;
282 __le16 wNdpInAlignment;
Ben Cheng655a7c02013-10-16 16:09:24 -0700283/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700284 __le16 wPadding1;
Ben Cheng655a7c02013-10-16 16:09:24 -0700285 __le32 dwNtbOutMaxSize;
286 __le16 wNdpOutDivisor;
287 __le16 wNdpOutPayloadRemainder;
Ben Cheng655a7c02013-10-16 16:09:24 -0700288/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700289 __le16 wNdpOutAlignment;
Ben Cheng655a7c02013-10-16 16:09:24 -0700290 __le16 wNtbOutMaxDatagrams;
291} __attribute__ ((packed));
292#define USB_CDC_NCM_NTH16_SIGN 0x484D434E
Ben Cheng655a7c02013-10-16 16:09:24 -0700293/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700294#define USB_CDC_NCM_NTH32_SIGN 0x686D636E
Ben Cheng655a7c02013-10-16 16:09:24 -0700295struct usb_cdc_ncm_nth16 {
296 __le32 dwSignature;
297 __le16 wHeaderLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700298/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700299 __le16 wSequence;
Ben Cheng655a7c02013-10-16 16:09:24 -0700300 __le16 wBlockLength;
301 __le16 wNdpIndex;
302} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700303/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700304struct usb_cdc_ncm_nth32 {
Ben Cheng655a7c02013-10-16 16:09:24 -0700305 __le32 dwSignature;
306 __le16 wHeaderLength;
307 __le16 wSequence;
Ben Cheng655a7c02013-10-16 16:09:24 -0700308/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700309 __le32 dwBlockLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700310 __le32 dwNdpIndex;
311} __attribute__ ((packed));
312#define USB_CDC_NCM_NDP16_CRC_SIGN 0x314D434E
Ben Cheng655a7c02013-10-16 16:09:24 -0700313/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700314#define USB_CDC_NCM_NDP16_NOCRC_SIGN 0x304D434E
Ben Cheng655a7c02013-10-16 16:09:24 -0700315#define USB_CDC_NCM_NDP32_CRC_SIGN 0x316D636E
316#define USB_CDC_NCM_NDP32_NOCRC_SIGN 0x306D636E
317#define USB_CDC_MBIM_NDP16_IPS_SIGN 0x00535049
Ben Cheng655a7c02013-10-16 16:09:24 -0700318/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700319#define USB_CDC_MBIM_NDP32_IPS_SIGN 0x00737069
Ben Cheng655a7c02013-10-16 16:09:24 -0700320#define USB_CDC_MBIM_NDP16_DSS_SIGN 0x00535344
321#define USB_CDC_MBIM_NDP32_DSS_SIGN 0x00737364
322struct usb_cdc_ncm_dpe16 {
Ben Cheng655a7c02013-10-16 16:09:24 -0700323/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700324 __le16 wDatagramIndex;
Ben Cheng655a7c02013-10-16 16:09:24 -0700325 __le16 wDatagramLength;
326} __attribute__((__packed__));
327struct usb_cdc_ncm_ndp16 {
Ben Cheng655a7c02013-10-16 16:09:24 -0700328/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700329 __le32 dwSignature;
Ben Cheng655a7c02013-10-16 16:09:24 -0700330 __le16 wLength;
331 __le16 wNextNdpIndex;
332 struct usb_cdc_ncm_dpe16 dpe16[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700333/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700334} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700335struct usb_cdc_ncm_dpe32 {
336 __le32 dwDatagramIndex;
337 __le32 dwDatagramLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700338/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700339} __attribute__((__packed__));
Ben Cheng655a7c02013-10-16 16:09:24 -0700340struct usb_cdc_ncm_ndp32 {
341 __le32 dwSignature;
342 __le16 wLength;
Ben Cheng655a7c02013-10-16 16:09:24 -0700343/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700344 __le16 wReserved6;
Ben Cheng655a7c02013-10-16 16:09:24 -0700345 __le32 dwNextNdpIndex;
346 __le32 dwReserved12;
347 struct usb_cdc_ncm_dpe32 dpe32[0];
Ben Cheng655a7c02013-10-16 16:09:24 -0700348/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700349} __attribute__ ((packed));
Ben Cheng655a7c02013-10-16 16:09:24 -0700350#define USB_CDC_NCM_NDP16_INDEX_MIN 0x000C
351#define USB_CDC_NCM_NDP32_INDEX_MIN 0x0010
352#define USB_CDC_NCM_DATAGRAM_FORMAT_CRC 0x30
Ben Cheng655a7c02013-10-16 16:09:24 -0700353/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700354#define USB_CDC_NCM_DATAGRAM_FORMAT_NOCRC 0X31
Ben Cheng655a7c02013-10-16 16:09:24 -0700355#define USB_CDC_NCM_PROTO_CODE_NO_ENCAP_COMMANDS 0x00
356#define USB_CDC_NCM_PROTO_CODE_EXTERN_PROTO 0xFE
357#define USB_CDC_NCM_NCAP_ETH_FILTER (1 << 0)
Ben Cheng655a7c02013-10-16 16:09:24 -0700358/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700359#define USB_CDC_NCM_NCAP_NET_ADDRESS (1 << 1)
Ben Cheng655a7c02013-10-16 16:09:24 -0700360#define USB_CDC_NCM_NCAP_ENCAP_COMMAND (1 << 2)
361#define USB_CDC_NCM_NCAP_MAX_DATAGRAM_SIZE (1 << 3)
362#define USB_CDC_NCM_NCAP_CRC_MODE (1 << 4)
Ben Cheng655a7c02013-10-16 16:09:24 -0700363/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700364#define USB_CDC_NCM_NCAP_NTB_INPUT_SIZE (1 << 5)
Ben Cheng655a7c02013-10-16 16:09:24 -0700365#define USB_CDC_NCM_NTB16_SUPPORTED (1 << 0)
366#define USB_CDC_NCM_NTB32_SUPPORTED (1 << 1)
367#define USB_CDC_NCM_NDP_ALIGN_MIN_SIZE 0x04
Ben Cheng655a7c02013-10-16 16:09:24 -0700368/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700369#define USB_CDC_NCM_NTB_MAX_LENGTH 0x1C
Ben Cheng655a7c02013-10-16 16:09:24 -0700370#define USB_CDC_NCM_NTB16_FORMAT 0x00
371#define USB_CDC_NCM_NTB32_FORMAT 0x01
372#define USB_CDC_NCM_NTB_MIN_IN_SIZE 2048
Ben Cheng655a7c02013-10-16 16:09:24 -0700373/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700374#define USB_CDC_NCM_NTB_MIN_OUT_SIZE 2048
Ben Cheng655a7c02013-10-16 16:09:24 -0700375struct usb_cdc_ncm_ndp_input_size {
376 __le32 dwNtbInMaxSize;
377 __le16 wNtbInMaxDatagrams;
Ben Cheng655a7c02013-10-16 16:09:24 -0700378/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700379 __le16 wReserved;
Ben Cheng655a7c02013-10-16 16:09:24 -0700380} __attribute__ ((packed));
381#define USB_CDC_NCM_CRC_NOT_APPENDED 0x00
382#define USB_CDC_NCM_CRC_APPENDED 0x01
Ben Cheng655a7c02013-10-16 16:09:24 -0700383/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
Christopher Ferrisba8d4f42014-09-03 19:56:49 -0700384#endif