Go to main content

man pages section 9: DDI and DKI Properties and Data Structures

Exit Print View

Updated: Thursday, June 13, 2019
 
 

usb_cfg_descr(9S)

Name

usb_cfg_descr - USB configuration descriptor

Synopsis

#include <sys/usb/usba.h> 

Interface Level

Solaris DDI specific (Solaris DDI)

Description

The usb_cfg_descr_t configuration descriptor defines attributes of a configuration. A configuration contains one or more interfaces. A configuration descriptor acts as a header for the group of other descriptors describing the subcomponents (for example, interfaces and endpoints) of a configuration. Please refer to Section 9.6.3 of the USB 2.0 specification. The USB 2.0 specification is available at www.usb.org.

One or more configuration descriptors are retrieved from a USB device during device enumeration. They can be accessed via usb_get_dev_data(9F).

A configuration descriptor has the following fields:


uint8_t         bLength                 Size of this descriptor
                                        in bytes.

uint8_t         bDescriptorType         Set to USB_DESCR_TYPE_CFG.

uint16_t        wTotalLength            Total length of data returned
                                        including this and all other
                                        descriptors in this configuration.

uint8_t         bNumInterfaces          Number of interfaces in this
                                        configuration.

uint8_t         bConfigurationValue     ID of this configuration
                                        (1-based).

uint8_t         iConfiguration          Index of optional configuration
                                        string. Valid if > 0.

uint8_t         bmAttributes            Configuration characteristics
                                        (See below).

uint8_t         bMaxPower               Maximum power consumption, in
                                        2mA units.

Configuration descriptors define the following bmAttributes:
     USB_CFG_ATTR_SELFPWR       -      Set if config not using bus power.
     USB_CFG_ATTR_REMOTE_WAKEUP -      Set if config supports rem wakeup.

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Architecture
PCI-based systems
Interface Stability
Committed
Availability
system/io/usb

See Also

attributes(7), usb_get_alt_if(9F), usb_get_cfg(9F), usb_get_dev_data(9F), usb_get_string_descr(9F), usb_parse_data(9F), usb_dev_descr(9S), usb_ctrl_request(9S), usb_dev_qlf_descr(9S), usb_ep_descr(9S), usb_if_descr(9S), usb_other_speed_cfg_descr(9S), usb_string_descr(9S)