summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/usb.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/usb/usb.h')
-rw-r--r--sys/dev/usb/usb.h122
1 files changed, 72 insertions, 50 deletions
diff --git a/sys/dev/usb/usb.h b/sys/dev/usb/usb.h
index 8982a4f..b61bc32 100644
--- a/sys/dev/usb/usb.h
+++ b/sys/dev/usb/usb.h
@@ -338,56 +338,78 @@ typedef struct {
#define UPS_C_PORT_RESET 0x0010
} usb_port_status_t;
-#define UCLASS_UNSPEC 0
-#define UCLASS_AUDIO 1
-#define USUBCLASS_AUDIOCONTROL 1
-#define USUBCLASS_AUDIOSTREAM 2
-#define USUBCLASS_MIDISTREAM 3
-#define UCLASS_CDC 2 /* communication */
-#define USUBCLASS_DIRECT_LINE_CONTROL_MODEL 1
-#define USUBCLASS_ABSTRACT_CONTROL_MODEL 2
-#define USUBCLASS_TELEPHONE_CONTROL_MODEL 3
-#define USUBCLASS_MULTICHANNEL_CONTROL_MODEL 4
-#define USUBCLASS_CAPI_CONTROLMODEL 5
-#define USUBCLASS_ETHERNET_NETWORKING_CONTROL_MODEL 6
-#define USUBCLASS_ATM_NETWORKING_CONTROL_MODEL 7
-#define UPROTO_CDC_AT 1
-#define UCLASS_HID 3
-#define USUBCLASS_BOOT 1
-#define UCLASS_PRINTER 7
-#define USUBCLASS_PRINTER 1
-#define UPROTO_PRINTER_UNI 1
-#define UPROTO_PRINTER_BI 2
-#define UCLASS_MASS 8
-#define USUBCLASS_RBC 1
-#define USUBCLASS_SFF8020I 2
-#define USUBCLASS_QIC157 3
-#define USUBCLASS_UFI 4
-#define USUBCLASS_SFF8070I 5
-#define USUBCLASS_SCSI 6
-#define UPROTO_MASS_CBI_I 0
-#define UPROTO_MASS_CBI 1
-#define UPROTO_MASS_BBB 2
-#define UPROTO_MASS_BBB_P 80 /* 'P' for the Iomega Zip drive */
-#define UCLASS_HUB 9
-#define USUBCLASS_HUB 0
-#define UCLASS_DATA 10
-#define USUBCLASS_DATA 0
-#define UPROTO_DATA_ISDNBRI 0x30 /* Physical iface */
-#define UPROTO_DATA_HDLC 0x31 /* HDLC */
-#define UPROTO_DATA_TRANSPARENT 0x32 /* Transparent */
-#define UPROTO_DATA_Q921M 0x50 /* Management for Q921 */
-#define UPROTO_DATA_Q921 0x51 /* Data for Q921 */
-#define UPROTO_DATA_Q921TM 0x52 /* TEI multiplexer for Q921 */
-#define UPROTO_DATA_V42BIS 0x90 /* Data compression */
-#define UPROTO_DATA_Q931 0x91 /* Euro-ISDN */
-#define UPROTO_DATA_V120 0x92 /* V.24 rate adaption */
-#define UPROTO_DATA_CAPI 0x93 /* CAPI 2.0 commands */
-#define UPROTO_DATA_HOST_BASED 0xfd /* Host based driver */
-#define UPROTO_DATA_PUF 0xfe /* see Prot. Unit Func. Desc.*/
-#define UPROTO_DATA_VENDOR 0xff /* Vendor specific */
-#define UCLASS_VENDOR_DA 0xfe /* Doug Ambrisko */
-#define USUBCLASS_DA 0xda /* Doug Ambrisko */
+/* Device class codes */
+#define UDCLASS_AUDIO 0x00
+#define UDCLASS_COMM 0x02
+#define UDCLASS_HID 0x00
+#define UDCLASS_HUB 0x09
+#define UDSUBCLASS_HUB 0
+#define UDCLASS_MASS 0x00
+
+/* Interface class codes */
+#define UICLASS_UNSPEC 0x00
+
+#define UICLASS_AUDIO 0x01
+#define UISUBCLASS_AUDIOCONTROL 1
+#define UISUBCLASS_AUDIOSTREAM 2
+#define UISUBCLASS_MIDISTREAM 3
+
+#define UICLASS_CDC 0x02 /* communication */
+#define UISUBCLASS_DIRECT_LINE_CONTROL_MODEL 1
+#define UISUBCLASS_ABSTRACT_CONTROL_MODEL 2
+#define UISUBCLASS_TELEPHONE_CONTROL_MODEL 3
+#define UISUBCLASS_MULTICHANNEL_CONTROL_MODEL 4
+#define UISUBCLASS_CAPI_CONTROLMODEL 5
+#define UISUBCLASS_ETHERNET_NETWORKING_CONTROL_MODEL 6
+#define UISUBCLASS_ATM_NETWORKING_CONTROL_MODEL 7
+#define UIPROTO_CDC_AT 1
+
+#define UICLASS_HID 0x03
+#define UISUBCLASS_BOOT 1
+#define UIPROTO_BOOT_KEYBOARD 1
+
+#define UICLASS_PHYSICAL 0x05
+
+#define UICLASS_PRINTER 0x07
+#define UISUBCLASS_PRINTER 1
+#define UIPROTO_PRINTER_UNI 1
+#define UIPROTO_PRINTER_BI 2
+
+#define UICLASS_MASS 0x08
+#define UISUBCLASS_RBC 1
+#define UISUBCLASS_SFF8020I 2
+#define UISUBCLASS_QIC157 3
+#define UISUBCLASS_UFI 4
+#define UISUBCLASS_SFF8070I 5
+#define UISUBCLASS_SCSI 6
+#define UIPROTO_MASS_CBI_I 0
+#define UIPROTO_MASS_CBI 1
+#define UIPROTO_MASS_BULK 2
+#define UIPROTO_MASS_BULK_P 80 /* 'P' for the Iomega Zip drive */
+
+#define UICLASS_HUB 0x09
+#define UISUBCLASS_HUB 0
+
+#define UICLASS_CDC_DATA 0x0a
+#define UISUBCLASS_DATA 0
+#define UIPROTO_DATA_ISDNBRI 0x30 /* Physical iface */
+#define UIPROTO_DATA_HDLC 0x31 /* HDLC */
+#define UIPROTO_DATA_TRANSPARENT 0x32 /* Transparent */
+#define UIPROTO_DATA_Q921M 0x50 /* Management for Q921 */
+#define UIPROTO_DATA_Q921 0x51 /* Data for Q921 */
+#define UIPROTO_DATA_Q921TM 0x52 /* TEI multiplexer for Q921 */
+#define UIPROTO_DATA_V42BIS 0x90 /* Data compression */
+#define UIPROTO_DATA_Q931 0x91 /* Euro-ISDN */
+#define UIPROTO_DATA_V120 0x92 /* V.24 rate adaption */
+#define UIPROTO_DATA_CAPI 0x93 /* CAPI 2.0 commands */
+#define UIPROTO_DATA_HOST_BASED 0xfd /* Host based driver */
+#define UIPROTO_DATA_PUF 0xfe /* see Prot. Unit Func. Desc.*/
+#define UIPROTO_DATA_VENDOR 0xff /* Vendor specific */
+
+#define UICLASS_FIRM_UPD 0x0c
+
+#define UICLASS_APPL_SPEC 0xfe
+#define UICLASS_VENDOR 0xff
#define USB_HUB_MAX_DEPTH 5
OpenPOWER on IntegriCloud