1usb_dev_descr(9S) Data Structures for Drivers usb_dev_descr(9S)
2
3
4
6 usb_dev_descr - USB device descriptor
7
9 #include <sys/usb/usba.h>
10
11
13 Solaris DDI specific (Solaris DDI)
14
16 The usb_dev_descr_t device descriptor defines device-wide attributes.
17 Please refer to Section 9.6.1 of the USB 2.0 specification. The USB 2.0
18 specification is available at www.usb.org.
19
20
21 The device descriptor is retrieved from a USB device during device enu‐
22 meration and can be accessed via usb_get_dev_data(9F).
23
24
25 A device descriptor contains the following fields:
26
27 uint8_t bLength Size of this descriptor,
28 in bytes.
29
30 uint8_t bDescriptorType Set to USB_DESCR_TYPE_DEV.
31
32 uint16_t bcdUSB USB specification release
33 number supported, in bcd.
34
35 uint8_t bDeviceClass Class code (see below).
36
37 uint8_t bDeviceSubClass Subclass code (see USB 2.0
38 specification of applicable
39 device class for information.)
40
41 uint8_t bDeviceProtocol Protocol code (see USB 2.0
42 specification of applicable
43 device class for information.)
44
45 uint8_t bMaxPacketSize0 Maximum packet size of
46 endpoint 0.
47
48 uint16_t idVendor vendor ID value.
49
50 uint16_t idProduct product ID value.
51
52 uint16_t bcdDevice Device release number in
53 binary coded decimal.
54
55 uint8_t iManufacturer Index of optional manufacturer
56 description string.
57 Valid if > 0.
58
59 uint8_t iProduct Index of optional product
60 description string.
61 Valid if > 0.
62
63 uint8_t iSerialNumber Index of optional serial
64 number string.
65 Valid if > 0.
66
67 uint8_t bNumConfigurations Number of available
68 configurations.
69
70
71 Device descriptors bDeviceClass values:
72
73 USB_CLASS_PER_INTERFACE Class information is at
74 interface level.
75
76 USB_CLASS_COMM CDC control device class.
77
78 USB_CLASS_DIAG Diagnostic device class.
79
80 USB_CLASS_HUB HUB device class.
81
82 USB_CLASS_MISC MISC device class.
83
84 USB_CLASS_VENDOR_SPEC Vendor-specific class.
85
86 USB_CLASS_WIRELESS Wireless controller
87 device class.
88
89
90
91
93 See attributes(5) for descriptions of the following attributes:
94
95
96
97
98 ┌─────────────────────────────┬─────────────────────────────┐
99 │ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
100 ├─────────────────────────────┼─────────────────────────────┤
101 │Architecture │PCI-based systems │
102 ├─────────────────────────────┼─────────────────────────────┤
103 │Interface stability │Committed │
104 ├─────────────────────────────┼─────────────────────────────┤
105 │Availability │SUNWusbu │
106 └─────────────────────────────┴─────────────────────────────┘
107
109 attributes(5), usb_get_alt_if(9F), usb_get_cfg(9F),
110 usb_get_dev_data(9F), usb_get_string_descr(9F), usb_parse_data(9F),
111 usb_cfg_descr(9S), usb_ctrl_request(9S), usb_dev_qlf_descr(9S),
112 usb_ep_descr(9S), usb_if_descr(9S), usb_other_speed_cfg_descr(9S),
113 usb_string_descr(9S)
114
115
116
117SunOS 5.11 5 Jan 2004 usb_dev_descr(9S)