1. NAME▲
usb_driver_set_configuration - Provide a way for drivers to change device configurations
2. SYNOPSIS ▲
int usb_driver_set_configuration(struct usb_device * udev , int config );
3. ARGUMENTS ▲
udev
the device whose configuration is being updated
config
the configuration being chosen.
4. CONTEXT ▲
In process context, must be able to sleep
5. DESCRIPTION ▲
Device interface drivers are not allowed to change device configurations. This is because changing configurations will destroy the interface the driver is bound to and create new ones; it would be like a floppy-disk driver telling the computer to replace the floppy-disk drive with a tape drive!
Still, in certain specialized circumstances the need may arise. This routine gets around the normal restrictions by using a work thread to submit the change-config request.
Returns 0 if the request was successfully queued, error code otherwise. The caller has no way to know whether the queued request will eventually succeed.
6. COPYRIGHT ▲