1. NAME▲
struct_usb_device_driver - identifies USB device driver to usbcore
2. SYNOPSIS ▲
struct
usb_device_driver {
const
char
*
name;
int
(*
probe) (
struct
usb_device *
udev);
void
(*
disconnect) (
struct
usb_device *
udev);
int
(*
suspend) (
struct
usb_device *
udev, pm_message_t message);
int
(*
resume) (
struct
usb_device *
udev, pm_message_t message);
struct
usbdrv_wrap drvwrap;
unsigned
int
supports_autosuspend:1
;
}
;
3. MEMBERS ▲
name
The driver name should be unique among USB drivers, and should normally be the same as the module name.
probe
Called to see if the driver is willing to manage a particular device. If it is, probe returns zero and uses dev_set_drvdata to associate driver-specific data with the device. If unwilling to manage the device, return a negative errno value.
disconnect
Called when the device is no longer accessible, usually because it has been (or is being) disconnected or the driverAqs module is being unloaded.
suspend
Called when the device is going to be suspended by the system.
resume
Called when the device is being resumed by the system.
drvwrap
Driver-model core structure wrapper.
supports_autosuspend
if set to 0, the USB core will not allow autosuspend for devices bound to this driver.
4. DESCRIPTION ▲
USB drivers must provide all the fields listed above except drvwrap.
5. COPYRIGHT ▲