linux/drivers/usb/host
Alan Stern 17230acdc7 UHCI: Eliminate asynchronous skeleton Queue Headers
This patch (as856) attempts to improve the performance of uhci-hcd by
removing the asynchronous skeleton Queue Headers.  They don't contain
any useful information but the controller has to read through them at
least once every millisecond, incurring a non-zero DMA overhead.

Now all the asynchronous queues are combined, along with the period-1
interrupt queue, into a single list with a single skeleton QH.  The
start of the low-speed control, full-speed control, and bulk sublists
is determined by linear search.  Since there should rarely be more
than a couple of QHs in the list, the searches should incur a much
smaller total load than keeping the skeleton QHs.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-02-23 15:03:45 -08:00
..
Kconfig ohci: Add support for OHCI controller on the of_platform bus 2007-02-07 15:44:33 -08:00
Makefile USB: u132-hcd: host controller driver for ELAN U132 adapter 2006-09-27 11:58:59 -07:00
ehci-au1xxx.c USB: Properly unregister reboot notifier in case of failure in ehci hcd 2006-09-27 11:58:54 -07:00
ehci-dbg.c Replace remaining references to "driverfs" with "sysfs". 2007-02-17 19:13:42 +01:00
ehci-fsl.c USB: Implement support for EHCI with big endian MMIO 2007-02-07 15:44:32 -08:00
ehci-fsl.h [PATCH] USB: EHCI for Freescale 83xx 2006-03-20 14:49:55 -08:00
ehci-hcd.c USB: ps3: don't call ps3_system_bus_driver_register on other platforms 2007-02-16 15:32:22 -08:00
ehci-hub.c EHCI: add debugging message to ehci_bus_suspend 2007-02-16 15:32:18 -08:00
ehci-mem.c USB: EHCI whitespace fixes (cosmetic) 2006-09-27 11:58:56 -07:00
ehci-pci.c USB: Implement support for EHCI with big endian MMIO 2007-02-07 15:44:32 -08:00
ehci-ps3.c [PATCH] ps3 usb missed the addition of new argument to ps3_alloc_io_irq() 2007-02-09 08:28:48 -08:00
ehci-q.c USB: Implement support for EHCI with big endian MMIO 2007-02-07 15:44:32 -08:00
ehci-sched.c USB: Implement support for EHCI with big endian MMIO 2007-02-07 15:44:32 -08:00
ehci.h [PATCH] hci_{read,write}l() does force casts to wrong type for no reason 2007-02-09 09:14:08 -08:00
hc_crisv10.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
hc_crisv10.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
isp116x-hcd.c USB: change __init to __devinit for isp116x_probe 2007-02-16 15:32:22 -08: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: ohci whitespace/comment fixups 2006-12-20 10:14:26 -08: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: ps3: don't call ps3_system_bus_driver_register on other platforms 2007-02-16 15:32:22 -08:00
ohci-hub.c USB: ohci handles hardware faults during root port resets 2006-12-20 10:14:27 -08: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 whitespace/comment fixups 2006-12-20 10:14:26 -08: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 ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-pnx4008.c [PATCH] Scheduled removal of SA_xxx interrupt flags fixups 2007-02-14 08:09:54 -08: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 ohci: Add support for OHCI controller on the of_platform bus 2007-02-07 15:44:33 -08:00
ohci-ppc-soc.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-ps3.c [PATCH] ps3 usb missed the addition of new argument to ps3_alloc_io_irq() 2007-02-09 08:28:48 -08:00
ohci-pxa27x.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-q.c USB: ohci whitespace/comment fixups 2006-12-20 10:14:26 -08:00
ohci-s3c2410.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci-sa1111.c ohci: Rework bus glue integration to allow several at once 2007-02-07 15:44:33 -08:00
ohci.h [PATCH] hci_{read,write}l() does force casts to wrong type for no reason 2007-02-09 09:14:08 -08:00
pci-quirks.c [PATCH] USB: Kill compiler warning in quirk_usb_handoff_ohci 2006-07-12 16:03:22 -07:00
pci-quirks.h [PATCH] USB: pci-quirks.c: proper prototypes 2006-04-14 11:12:20 -07:00
sl811-hcd.c IRQ: Maintain regs pointer globally rather than passing to IRQ handlers 2006-10-05 15:10:12 +01:00
sl811.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sl811_cs.c [PATCH] remove many unneeded #includes of sched.h 2007-02-14 08:09:54 -08:00
u132-hcd.c USB: u132-hcd/ftdi-elan: add support for Option GT 3G Quad card 2006-12-20 10:14:27 -08:00
uhci-debug.c UHCI: Eliminate asynchronous skeleton Queue Headers 2007-02-23 15:03:45 -08:00
uhci-hcd.c UHCI: Eliminate asynchronous skeleton Queue Headers 2007-02-23 15:03:45 -08:00
uhci-hcd.h UHCI: Eliminate asynchronous skeleton Queue Headers 2007-02-23 15:03:45 -08:00
uhci-hub.c UHCI: module parameter to ignore overcurrent changes 2006-12-20 10:14:26 -08:00
uhci-q.c UHCI: Eliminate asynchronous skeleton Queue Headers 2007-02-23 15:03:45 -08:00