linux/drivers/usb/host
Benjamin Herrenschmidt 565227c082 usb: Remove broken optimisation in OHCI IRQ handler
The OHCI IRQ handler has an optimisation that avoids reading some
chip registers when the controller reports that the interrupt was
triggered *only* because completed requests were written into the
controller's "done list" and handed to the host.

This mechanism can't be used on some controllers.  Among others, it
fails for the SA1111 and the AMCC 440EP PowerPC processor.

This patch removes the optimisation and makes the code clearer.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-12-17 10:47:15 -08:00
..
Kconfig USB: fix USB_OHCI_HCD_SSB dependencies 2007-11-28 13:58:32 -08:00
Makefile USB: r8a66597-hcd: host controller driver for R8A66597 2007-07-12 16:29:45 -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: use IRQF_DISABLED for HCD interrupt handlers 2007-12-17 10:47:15 -08: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: fix up EHCI startup synchronization 2007-11-28 13:58:36 -08:00
ehci-hub.c Fix misspellings of "system", "controller", "interrupt" and "necessary". 2007-10-19 23:10:43 +02: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 USB: Dealias -110 code (more complete) 2006-09-27 11:59:00 -07:00
ohci-at91.c USB: at91-ohci, handle extra at91sam9261 ahb clock 2007-02-16 15:32:24 -08:00
ohci-au1xxx.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-dbg.c USB: reorganize urb->status use in ohci-hcd 2007-10-12 14:55:21 -07:00
ohci-ep93xx.c [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 2007-02-14 08:09:54 -08:00
ohci-hcd.c usb: Remove broken optimisation in OHCI IRQ handler 2007-12-17 10:47:15 -08:00
ohci-hub.c USB: Fix NEC OHCI chip silicon bug 2007-07-12 16:34:29 -07:00
ohci-lh7a404.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-mem.c USB: OHCI handles more ZFMicro quirks 2007-10-12 14:54:59 -07:00
ohci-omap.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
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 [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 2007-02-14 08:09:54 -08:00
ohci-ppc-of.c USB: use IRQF_DISABLED for HCD interrupt handlers 2007-12-17 10:47:15 -08: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 [ARM] 4304/1: removes the unnecessary bit number from CKENnn_XXXX 2007-04-21 23:14:01 +01:00
ohci-q.c USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
ohci-s3c2410.c Add missing newlines to some uses of dev_<level> messages 2007-10-18 14:37:28 -07:00
ohci-sa1111.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-ssb.c USB: use IRQF_DISABLED for HCD interrupt handlers 2007-12-17 10:47:15 -08: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 [PATCH] USB: pci-quirks.c: proper prototypes 2006-04-14 11:12:20 -07:00
r8a66597-hcd.c USB: use IRQF_DISABLED for HCD interrupt handlers 2007-12-17 10:47:15 -08:00
r8a66597.h USB: r8a66597-hcd: fixes some problem 2007-07-19 17:46:08 -07:00
sl811-hcd.c Fix misspellings of "system", "controller", "interrupt" and "necessary". 2007-10-19 23:10:43 +02:00
sl811.h
sl811_cs.c some kmalloc/memset ->kzalloc (tree wide) 2007-07-19 10:04:50 -07:00
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 USB: use IRQF_DISABLED for HCD interrupt handlers 2007-12-17 10:47:15 -08:00
uhci-hcd.h USB: Eliminate urb->status usage! 2007-10-12 14:55:23 -07:00
uhci-hub.c UHCI: fix port resume problem 2007-03-09 19:52:23 -08:00
uhci-q.c USB: fix scheduling of Iso URBs in uhci-hcd 2007-10-25 12:18:43 -07:00