linux-hardened/include/linux/usb
Alan Stern 765e0ba626 usb-serial: new API for driver registration
This patch (as1522) adds two new routines to the usb-serial core, for
registering and unregistering serial drivers.  Instead of registering
the usb_driver and usb_serial_drivers separately, with error checking
for each one, the drivers can all be registered and unregistered by a
single function call.  This reduces duplicated code.

More importantly, the new core routines change the order in which the
drivers are registered.  Currently the usb-serial drivers are all
registered first and the usb_driver is done last, which leaves a
window for problems.  A udev script may quickly add a new dynamic-ID
for a usb-serial driver, causing the corresponding usb_driver to be
probed.  If the usb_driver hasn't been registered yet then an oops
will occur.

The new routine prevents such problems by registering the usb_driver
first.  To insure that it gets probed properly for already-attached
serial devices, we call driver_attach() after all the usb-serial
drivers have been registered.

Along with adding the new routines, the patch modifies the "generic"
serial driver to use them.  Further patches will similarly modify all
the other in-tree USB serial drivers.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-02-24 12:39:17 -08:00
..
association.h
atmel_usba_udc.h
audio-v2.h
audio.h
c67x00.h
cdc.h
ch9.h usb: ch9.h: usb_endpoint_maxp() uses __le16_to_cpu() 2012-02-01 15:56:19 -08:00
ch11.h USB/xHCI: Enable USB 3.0 hub remote wakeup. 2012-02-14 12:12:24 -08:00
composite.h usb: gadget: add SuperSpeed support to the Gadget Framework 2011-07-01 14:27:05 -07:00
ehci_def.h
functionfs.h
g_hid.h
g_printer.h
gadget.h usb: gadget: introduce support for sg lists 2011-12-21 13:24:44 +02:00
gadgetfs.h
gpio_vbus.h
hcd.h USB/xHCI: Support device-initiated USB 3.0 resume. 2012-02-14 12:12:26 -08:00
input.h
intel_mid_otg.h
iowarrior.h
irda.h
isp116x.h
isp1362.h
isp1760.h
Kbuild USB: export video.h to the includes available for userspace 2011-09-23 23:07:26 -03:00
langwell_udc.h
m66592.h usb: gadget: m66592-udc: add function for external controller 2011-07-09 01:08:39 +03:00
midi.h
msm_hsusb.h
msm_hsusb_hw.h
musb.h
net2280.h
otg.h
quirks.h
r8a66597.h usb: gadget: r8a66597-udc: add support for SUDMAC 2011-10-13 20:38:39 +03:00
renesas_usbhs.h usb: gadget: renesas_usbhs: add platform power control function 2011-12-12 11:44:58 +02:00
rndis_host.h
serial.h usb-serial: new API for driver registration 2012-02-24 12:39:17 -08:00
sl811.h
storage.h
tmc.h
uas.h usb/uas: add usb_pipe_usage_descriptor 2012-02-02 14:51:19 -08:00
ulpi.h
usbnet.h
video.h
wusb-wa.h
wusb.h