Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

struct_usb_host_config(9) [centos man page]

STRUCT 
USB_HOST_CONF(9) Host-Side Data Types and Macro STRUCT USB_HOST_CONF(9) NAME
struct_usb_host_config - representation of a device's configuration SYNOPSIS
struct usb_host_config { struct usb_config_descriptor desc; char * string; struct usb_interface_assoc_descriptor * intf_assoc[USB_MAXIADS]; struct usb_interface * interface[USB_MAXINTERFACES]; struct usb_interface_cache * intf_cache[USB_MAXINTERFACES]; unsigned char * extra; int extralen; }; MEMBERS
desc the device's configuration descriptor. string pointer to the cached version of the iConfiguration string, if present for this configuration. intf_assoc[USB_MAXIADS] list of any interface association descriptors in this config interface[USB_MAXINTERFACES] array of pointers to usb_interface structures, one for each interface in the configuration. The number of interfaces is stored in desc.bNumInterfaces. These pointers are valid only while the the configuration is active. intf_cache[USB_MAXINTERFACES] array of pointers to usb_interface_cache structures, one for each interface in the configuration. These structures exist for the entire life of the device. extra pointer to buffer containing all extra descriptors associated with this configuration (those preceding the first interface descriptor). extralen length of the extra descriptors buffer. DESCRIPTION
USB devices may have multiple configurations, but only one can be active at any time. Each encapsulates a different operational environment; for example, a dual-speed device would have separate configurations for full-speed and high-speed operation. The number of configurations available is stored in the device descriptor as bNumConfigurations. A configuration can contain multiple interfaces. Each corresponds to a different function of the USB device, and all are available whenever the configuration is active. The USB standard says that interfaces are supposed to be numbered from 0 to desc.bNumInterfaces-1, but a lot of devices get this wrong. In addition, the interface array is not guaranteed to be sorted in numerical order. Use usb_ifnum_to_if to look up an interface entry based on its number. Device drivers should not attempt to activate configurations. The choice of which configuration to install is a policy decision based on such considerations as available power, functionality provided, and the user's desires (expressed through userspace tools). However, drivers can call usb_reset_configuration to reinitialize the current configuration and all its interfaces. COPYRIGHT
Kernel Hackers Manual 3.10 June 2014 STRUCT USB_HOST_CONF(9)

Check Out this Related Man Page

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
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 con- figuration descriptor acts as a header for the group of other descriptors describing the subcomponents (for example, interfaces and end- points) 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(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Architecture |PCI-based systems | +-----------------------------+-----------------------------+ |Interface stability |Committed | +-----------------------------+-----------------------------+ |Availability |SUNWusbu | +-----------------------------+-----------------------------+ SEE ALSO
attributes(5), 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) SunOS 5.11 5 Jan 2004 usb_cfg_descr(9S)
Man Page