USB_SET_CONFIGURATION

Section: (9)
Updated: 09 April 2004
Index Return to Main Contents

 

NAME

usb_set_configuration - Makes a particular device setting be current  

SYNOPSIS

int usb_set_configuration (struct usb_device * dev, int configuration);  

ARGUMENTS

dev
the device whose configuration is being updated
configuration
the configuration being chosen.
 

CONTEXT

!in_interrupt ()  

DESCRIPTION

This is used to enable non-default device modes. Not all devices use this kind of configurability; many devices only have one configuration.

USB device configurations may affect Linux interoperability, 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 should be in some non-default device configuration. Other device modes may also be reflected as configuration options, such as whether two ISDN channels are available independently; and choosing between open standard device protocols (like CDC) or proprietary ones.

Note that USB has an additional level of device configurability, associated with interfaces. That configurability is accessed using usb_set_interface.

This call is synchronous. The calling context must be able to sleep, and must not hold the driver model lock for USB; usb device driver probe methods may not use this routine.

Returns zero on success, or else the status code returned by the underlying call that failed. On succesful completion, each interface in the original device configuration has been destroyed, and each one in the new configuration has been probed by all relevant usb device drivers currently known to the kernel.  

ABOUT THIS DOCUMENT

This documentation was generated with kernel version 2.6.0.


 

Index

NAME
SYNOPSIS
ARGUMENTS
CONTEXT
DESCRIPTION
ABOUT THIS DOCUMENT

This document was created by man2html, using the manual pages.
Time: 09:51:19 GMT, April 09, 2004