1usb_dev_descr(9S)         Data Structures for Drivers        usb_dev_descr(9S)
2
3
4

NAME

6       usb_dev_descr - USB device descriptor
7

SYNOPSIS

9       #include <sys/usb/usba.h>
10
11

INTERFACE LEVEL

13       Solaris DDI specific (Solaris DDI)
14

DESCRIPTION

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

ATTRIBUTES

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

SEE ALSO

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)
Impressum