aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/usb/net/usbnet.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/net/usbnet.h')
-rw-r--r--drivers/usb/net/usbnet.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/drivers/usb/net/usbnet.h b/drivers/usb/net/usbnet.h
index 21b5feb54fc0..7aa0abd1a9bd 100644
--- a/drivers/usb/net/usbnet.h
+++ b/drivers/usb/net/usbnet.h
@@ -126,6 +126,28 @@ extern int usbnet_resume (struct usb_interface *);
126extern void usbnet_disconnect(struct usb_interface *); 126extern void usbnet_disconnect(struct usb_interface *);
127 127
128 128
129/* Drivers that reuse some of the standard USB CDC infrastructure
130 * (notably, using multiple interfaces according to the the CDC
131 * union descriptor) get some helper code.
132 */
133struct cdc_state {
134 struct usb_cdc_header_desc *header;
135 struct usb_cdc_union_desc *u;
136 struct usb_cdc_ether_desc *ether;
137 struct usb_interface *control;
138 struct usb_interface *data;
139};
140
141extern int usbnet_generic_cdc_bind (struct usbnet *, struct usb_interface *);
142extern void usbnet_cdc_unbind (struct usbnet *, struct usb_interface *);
143
144/* CDC and RNDIS support the same host-chosen packet filters for IN transfers */
145#define DEFAULT_FILTER (USB_CDC_PACKET_TYPE_BROADCAST \
146 |USB_CDC_PACKET_TYPE_ALL_MULTICAST \
147 |USB_CDC_PACKET_TYPE_PROMISCUOUS \
148 |USB_CDC_PACKET_TYPE_DIRECTED)
149
150
129/* we record the state for each of our queued skbs */ 151/* we record the state for each of our queued skbs */
130enum skb_state { 152enum skb_state {
131 illegal = 0, 153 illegal = 0,