1
linux/drivers/usb/host
Sarah Sharp 913a8a344f USB: xhci: Change how xHCI commands are handled.
Some commands to the xHCI hardware cannot be allowed to fail due to out of
memory issues or the command ring being full.

Add a way to reserve a TRB on the command ring, and make all command
queueing functions indicate whether they are using a reserved TRB.

Add a way to pre-allocate all the memory a command might need.  A command
needs an input context, a variable to store the status, and (optionally) a
completion for the caller to wait on.  Change all code that assumes the
input device context, status, and completion for a command is stored in
the xhci virtual USB device structure (xhci_virt_device).

Store pending completions in a FIFO in xhci_virt_device.  Make the event
handler for a configure endpoint command check to see whether a pending
command in the list has completed.  We need to use separate input device
contexts for some configure endpoint commands, since multiple drivers can
submit requests at the same time that require a configure endpoint
command.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-09-23 06:46:39 -07:00
..
whci USB: whci-hcd: make endpoint_reset method async 2009-09-23 06:46:21 -07:00
ehci-atmel.c USB: at91: Add USB EHCI driver for at91sam9g45 series 2009-09-23 06:46:30 -07:00
ehci-au1xxx.c USB: au1xxx: add dev_pm_ops 2009-09-23 06:46:29 -07:00
ehci-dbg.c USB: EHCI: split ehci_qh into hw and sw parts 2009-09-23 06:46:29 -07:00
ehci-fsl.c USB: EHCI: use the new clear_tt_buffer interface 2009-07-12 15:16:39 -07:00
ehci-fsl.h
ehci-hcd.c USB: ehci-dbgp,ehci: Allow early or late use of the dbgp device 2009-09-23 06:46:38 -07:00
ehci-hub.c USB: ehci-dbgp,ehci: Allow dbpg to work with suspend/resume 2009-09-23 06:46:39 -07:00
ehci-ixp4xx.c USB: EHCI: use the new clear_tt_buffer interface 2009-07-12 15:16:39 -07:00
ehci-mem.c USB: EHCI: split ehci_qh into hw and sw parts 2009-09-23 06:46:29 -07:00
ehci-orion.c USB: ehci-orion: Call ehci_reset before ehci_halt 2009-07-28 14:31:10 -07:00
ehci-pci.c USB: ehci-dbgp,ehci: Allow early or late use of the dbgp device 2009-09-23 06:46:38 -07:00
ehci-ppc-of.c USB: EHCI: use the new clear_tt_buffer interface 2009-07-12 15:16:39 -07:00
ehci-ps3.c USB: EHCI: use the new clear_tt_buffer interface 2009-07-12 15:16:39 -07:00
ehci-q.c USB: EHCI: change deschedule logic for interrupt QHs 2009-09-23 06:46:37 -07:00
ehci-sched.c USB: EHCI: change deschedule logic for interrupt QHs 2009-09-23 06:46:37 -07:00
ehci-w90x900.c USB: Add nuvoton Ehci driver for w90p910 platform 2009-09-23 06:46:20 -07:00
ehci.h USB: EHCI: rescan the queue after an unlink 2009-09-23 06:46:37 -07:00
fhci-dbg.c
fhci-hcd.c
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c USB: fhci: mutually exclusive port_status 2009-07-12 15:16:36 -07:00
fhci-tds.c
fhci.h
hwa-hc.c
isp116x-hcd.c
isp116x.h
isp1362-hcd.c USB: isp1362: Correct use of ! and & 2009-09-23 06:46:33 -07:00
isp1362.h USB: isp1362: fix pulldown register defines and conf logic 2009-09-23 06:46:33 -07:00
isp1760-hcd.c USB: isp1760: allow platform devices to customize devflags 2009-09-23 06:46:29 -07:00
isp1760-hcd.h USB: isp1760: allow platform devices to customize devflags 2009-09-23 06:46:29 -07:00
isp1760-if.c USB: isp1760: allow platform devices to customize devflags 2009-09-23 06:46:29 -07:00
Kconfig USB: NXP ISP1362 USB host driver 2009-09-23 06:46:30 -07:00
Makefile USB: NXP ISP1362 USB host driver 2009-09-23 06:46:30 -07:00
ohci-at91.c USB: at91: modify OHCI driver to allow shared interrupts 2009-09-23 06:46:31 -07:00
ohci-au1xxx.c USB: au1xxx: add dev_pm_ops 2009-09-23 06:46:29 -07:00
ohci-dbg.c
ohci-ep93xx.c USB: ohci-ep93xx.c: remove unused variable 2009-09-23 06:46:34 -07:00
ohci-hcd.c USB: EHCI: OHCI: Remove unnecessary includes of reboot.h 2009-09-23 06:46:32 -07:00
ohci-hub.c
ohci-lh7a404.c
ohci-mem.c
ohci-omap.c USB: OMAP: OHCI: hc_driver's stop method should call ohci_stop 2009-07-28 14:31:09 -07:00
ohci-pci.c
ohci-pnx4008.c
ohci-pnx8550.c
ohci-ppc-of.c
ohci-ppc-soc.c
ohci-ps3.c
ohci-pxa27x.c USB: ohci-pxa27x: Allow NOCP and OCPM to be cleared 2009-09-23 06:46:32 -07:00
ohci-q.c trivial: OHCI: Fix typo in a comment 2009-09-21 15:14:51 +02:00
ohci-s3c2410.c
ohci-sa1111.c
ohci-sh.c
ohci-sm501.c
ohci-ssb.c
ohci-tmio.c
ohci.h
oxu210hp-hcd.c USB: EHCI: OHCI: Remove unnecessary includes of reboot.h 2009-09-23 06:46:32 -07:00
oxu210hp.h
pci-quirks.c USB: Work around BIOS bugs by quiescing USB controllers earlier 2009-09-23 06:46:33 -07:00
pci-quirks.h
r8a66597-hcd.c usb: fix hibernate in r8a66597-hcd dev_pm_ops conversion. 2009-07-29 21:31:13 +09:00
r8a66597.h usb: move r8a66597 register defines 2009-07-23 13:04:10 +09:00
sl811_cs.c
sl811-hcd.c USB: sl811-hcd: Fix device disconnect: 2009-09-23 06:46:16 -07:00
sl811.h
u132-hcd.c
uhci-debug.c
uhci-hcd.c debugfs: Modified default dir of debugfs for debugging UHCI. 2009-09-15 09:50:49 -07:00
uhci-hcd.h
uhci-hub.c
uhci-q.c USB: uhci: rm repeatedly evaluation for urbp->qh 2009-09-23 06:46:30 -07:00
xhci-dbg.c USB: xhci: Fix slot and endpoint context debugging. 2009-09-23 06:46:17 -07:00
xhci-ext-caps.h
xhci-hcd.c USB: xhci: Change how xHCI commands are handled. 2009-09-23 06:46:39 -07:00
xhci-hub.c
xhci-mem.c USB: xhci: Change how xHCI commands are handled. 2009-09-23 06:46:39 -07:00
xhci-pci.c USB: xhci: Add quirk for Fresco Logic xHCI hardware. 2009-09-23 06:46:17 -07:00
xhci-ring.c USB: xhci: Change how xHCI commands are handled. 2009-09-23 06:46:39 -07:00
xhci.h USB: xhci: Change how xHCI commands are handled. 2009-09-23 06:46:39 -07:00