.\" This manpage has been automatically generated by docbook2man .\" from a DocBook document. This tool can be found at: .\" .\" Please send any bug reports, improvements, comments, patches, .\" etc. to Steve Cheng . .TH "USB_SET_CONFIGURATION" "" "06 October 2005" "" "" .SH NAME usb_set_configuration \- Makes a particular device setting be current .SH SYNOPSIS "SYNOPSIS" .sp \fB .sp int usb_set_configuration (struct usb_device * \fIdev\fB, int \fIconfiguration\fB); \fR .SH "ARGUMENTS" .TP \fB\fIdev\fB\fR the device whose configuration is being updated .TP \fB\fIconfiguration\fB\fR the configuration being chosen. .SH "CONTEXT" .PP !in_interrupt () .SH "DESCRIPTION" .PP This is used to enable non-default device modes. Not all devices support this kind of configurability. By default, configuration zero is selected after enumeration; many devices only have a single configuration. .PP USB devices may support one or more configurations, which affect power consumption and the functionality available. For example, the default configuration is limited to using 100mA of bus power, so that when certain device functionality requires more power, and the device is bus powered, that functionality will be in some non-default device configuration. Other device modes may also be reflected as configuration options, such as whether two ISDN channels are presented as independent 64Kb/s interfaces or as one bonded 128Kb/s interface. .PP Note that USB has an additional level of device configurability, associated with interfaces. That configurability is accessed using \fBusb_set_interface\fR\&. .PP This call is synchronous, and may not be used in an interrupt context. .PP Returns zero on success, or else the status code returned by the underlying \fBusb_control_msg\fR call.