kernel-ark/drivers/usb/host
Alan Stern 32fe01985a USB: mutual exclusion for EHCI init and port resets
This patch (as999) fixes a problem that sometimes shows up when host
controller driver modules are loaded in the wrong order.  If ehci-hcd
happens to initialize an EHCI controller while the companion OHCI or
UHCI controller is in the middle of a port reset, the reset can fail
and the companion may get very confused.  The patch adds an
rw-semaphore and uses it to keep EHCI initialization and port resets
mutually exclusive.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Acked-by: David Brownell <david-b@pacbell.net>
Cc: David Miller <davem@davemloft.net>
Cc: Dely L Sy <dely.l.sy@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-10-12 14:55:34 -07:00
..
ehci-au1xxx.c USB: ehci build fixes on au1xxx, ppc-soc 2007-10-12 14:55:33 -07:00
ehci-dbg.c USB: use function attribute __maybe_unused 2007-07-12 16:29:50 -07:00
ehci-fsl.c USB: ehci_fsl update for MPC831x support 2007-07-12 16:29:50 -07:00
ehci-fsl.h ehci-fsl: fix cache coherency problem on system with large memory 2007-05-23 20:14:15 -07:00
ehci-hcd.c USB: mutual exclusion for EHCI init and port resets 2007-10-12 14:55:34 -07:00
ehci-hub.c USB: Don't resume root hub if the controller is suspended 2007-07-12 16:34:39 -07:00
ehci-mem.c Revert "USB: EHCI cpufreq fix" 2007-08-20 23:38:44 -07:00
ehci-pci.c USB: EHCI restart speedup 2007-10-12 14:55:18 -07:00
ehci-ppc-soc.c USB: ehci build fixes on au1xxx, ppc-soc 2007-10-12 14:55:33 -07:00
ehci-ps3.c USB: EHCI restart speedup 2007-10-12 14:55:18 -07:00
ehci-q.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
ehci-sched.c USB: reorganize urb->status use in ehci-hcd 2007-10-12 14:55:21 -07:00
ehci.h Revert "USB: EHCI cpufreq fix" 2007-08-20 23:38:44 -07:00
isp116x-hcd.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
isp116x.h
Kconfig USB: ohci SSB bus glue 2007-10-12 14:55:33 -07:00
Makefile USB: r8a66597-hcd: host controller driver for R8A66597 2007-07-12 16:29:45 -07:00
ohci-at91.c
ohci-au1xxx.c
ohci-dbg.c USB: reorganize urb->status use in ohci-hcd 2007-10-12 14:55:21 -07:00
ohci-ep93xx.c
ohci-hcd.c USB: ohci SSB bus glue 2007-10-12 14:55:33 -07:00
ohci-hub.c USB: Fix NEC OHCI chip silicon bug 2007-07-12 16:34:29 -07:00
ohci-lh7a404.c
ohci-mem.c USB: OHCI handles more ZFMicro quirks 2007-10-12 14:54:59 -07:00
ohci-omap.c
ohci-pci.c USB: OHCI handles more ZFMicro quirks 2007-10-12 14:54:59 -07:00
ohci-pnx4008.c USB: ohci-pnx4008: Remove unnecessary cast of return value of kzalloc 2007-07-12 16:34:43 -07:00
ohci-pnx8550.c
ohci-ppc-of.c USB: add runtime frame_no quirk for big-endian OHCI 2007-10-12 14:55:32 -07:00
ohci-ppc-soc.c USB: add runtime frame_no quirk for big-endian OHCI 2007-10-12 14:55:32 -07:00
ohci-ps3.c USB: PS3: USB system-bus rework 2007-07-12 16:34:30 -07:00
ohci-pxa27x.c
ohci-q.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
ohci-s3c2410.c
ohci-sa1111.c
ohci-ssb.c USB: ohci SSB bus glue 2007-10-12 14:55:33 -07:00
ohci.h USB: add runtime frame_no quirk for big-endian OHCI 2007-10-12 14:55:32 -07:00
pci-quirks.c EHCI: fix problem with BIOS handoff 2007-05-22 23:45:48 -07:00
pci-quirks.h
r8a66597-hcd.c USB: r8a66597-hcd: fix driver removing 2007-10-12 14:55:29 -07:00
r8a66597.h USB: r8a66597-hcd: fixes some problem 2007-07-19 17:46:08 -07:00
sl811_cs.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
sl811-hcd.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
sl811.h
u132-hcd.c USB: ELAN U132 Host Controller Driver: convert sw_lock to mutex 2007-10-12 14:55:24 -07:00
uhci-debug.c USB: add urb->unlinked field 2007-10-12 14:55:19 -07:00
uhci-hcd.c drivers/firmware: const-ify DMI API and internals 2007-10-09 20:22:20 -04:00
uhci-hcd.h USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
uhci-hub.c
uhci-q.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00