USB_CFG_DESCR(9S)        Data Structures for Drivers       USB_CFG_DESCR(9S)
NAME
       usb_cfg_descr - USB configuration descriptor
SYNOPSIS
       #include <sys/usb/usba.h>
INTERFACE LEVEL
       illumos DDI specific (illumos 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         |
       +--------------------+-------------------+
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_ctrl_request(9S), 
usb_dev_descr(9S), 
usb_dev_qlf_descr(9S),       
usb_ep_descr(9S), 
usb_if_descr(9S), 
usb_other_speed_cfg_descr(9S),       
usb_string_descr(9S)                               January 5, 2004             USB_CFG_DESCR(9S)