linux/drivers/usb/host
Alan Stern a455212d19 USB: EHCI: update toggle state for linked QHs
This is an update to the "usb-ehci-update-toggle-state-for-linked-qhs"
patch.  Since an HCD's endpoint_reset method can be called in
interrupt context, it mustn't assume that interrupts are enabled or
that it can sleep.

So we revert to the original way of refreshing QHs' toggle bits.  Now
the endpoint_reset method merely clears the toggle flag in the device
structure (as was done before) and starts an async QH unlink.  When the
QH is linked again, after the unlink finishes and an URB is queued,
the qh_refresh() routine will update the QH's toggle bit.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Tested-by: David <david@unsolicited.net>
CC: David Brownell <david-b@pacbell.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-07-12 15:16:36 -07:00
..
whci USB: whci-hcd: check return value of usb_hcd_link_urb_to_ep() 2009-04-17 10:50:27 -07:00
ehci-au1xxx.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-dbg.c USB: clean up redundant tests on unsigned 2009-01-07 09:59:49 -08:00
ehci-fsl.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-fsl.h
ehci-hcd.c USB: EHCI: update toggle state for linked QHs 2009-07-12 15:16:36 -07:00
ehci-hub.c USB: EHCI: create sysfs companion files directly in the controller device 2009-06-15 21:44:43 -07:00
ehci-ixp4xx.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-mem.c USB: EHCI: slow down ITD reuse 2009-02-27 14:40:50 -08:00
ehci-orion.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-pci.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-ppc-of.c USB: EHCI: update toggle state for linked QHs 2009-06-15 21:44:46 -07:00
ehci-ps3.c Merge commit 'origin/master' into next 2009-06-18 11:16:55 +10:00
ehci-q.c USB: EHCI: update toggle state for linked QHs 2009-07-12 15:16:36 -07:00
ehci-sched.c USB: EHCI: stagger frames for interrupt transfers 2009-06-15 21:44:46 -07:00
ehci.h USB: EHCI: stagger frames for interrupt transfers 2009-06-15 21:44:46 -07:00
fhci-dbg.c USB: FHCI: use the new usb debugfs directory 2009-06-15 21:44:43 -07:00
fhci-hcd.c USB: FHCI: use dev_name() in place of bus_id. 2009-03-24 16:38:23 -07:00
fhci-hub.c USB: Driver for Freescale QUICC Engine USB Host Controller 2009-01-27 16:15:38 -08:00
fhci-mem.c USB: Driver for Freescale QUICC Engine USB Host Controller 2009-01-27 16:15:38 -08:00
fhci-q.c USB: Driver for Freescale QUICC Engine USB Host Controller 2009-01-27 16:15:38 -08:00
fhci-sched.c USB: fhci: mutually exclusive port_status 2009-07-12 15:16:36 -07:00
fhci-tds.c USB: Driver for Freescale QUICC Engine USB Host Controller 2009-01-27 16:15:38 -08:00
fhci.h USB: Driver for Freescale QUICC Engine USB Host Controller 2009-01-27 16:15:38 -08:00
hwa-hc.c wusb: hwa-hc: Drop unused pci_suspend/resume hooks. 2009-06-15 21:44:44 -07:00
isp116x-hcd.c USB: make transfer_buffer_lengths in struct urb field u32 2009-03-24 16:20:36 -07:00
isp116x.h USB: add missing KERN_* constants to printks 2009-03-24 16:20:30 -07:00
isp1760-hcd.c USB: isp1760: urb_dequeue doesn't always find the urbs 2009-05-28 13:54:43 -07:00
isp1760-hcd.h USB: Make the isp1760_register function prototype more generic 2009-03-24 16:20:31 -07:00
isp1760-if.c USB: Add platform device support for the ISP1760 USB chip 2009-03-24 16:20:31 -07:00
Kconfig usb: allow sh7724 to enable on-chip r8a66597 2009-07-05 00:23:50 +09:00
Makefile USB: xhci: Add Makefile, MAINTAINERS, and Kconfig entries. 2009-06-15 21:44:51 -07:00
ohci-at91.c [ARM] 5446/1: ohci-at91: Limit vbus_pin assignment to the size of the array 2009-04-08 20:36:18 +01:00
ohci-au1xxx.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-dbg.c USB: OHCI: use the ohci structure directly in debugfs files. 2009-06-15 21:44:43 -07:00
ohci-ep93xx.c [ARM] 5526/1: ep93xx: usb driver cleanup 2009-05-29 20:16:29 +01:00
ohci-hcd.c USB: OHCI: use the new usb debugfs directory 2009-06-15 21:44:43 -07:00
ohci-hub.c USB: OHCI: fix endless polling behavior 2008-10-17 14:41:04 -07:00
ohci-lh7a404.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-mem.c
ohci-omap.c [ARM] omap: ensure OMAP drivers pass a struct device to clk_get() 2009-01-24 11:41:16 +00:00
ohci-pci.c USB: new flag for resume-from-hibernation 2009-06-15 21:44:44 -07:00
ohci-pnx4008.c USB: Convert ohci-pnx4008 to a new-style i2c driver 2009-01-07 09:59:53 -08:00
ohci-pnx8550.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-ppc-of.c USB: powerpc: Workaround for the PPC440EPX USBH_23 errata [take 3] 2009-01-07 09:59:52 -08:00
ohci-ppc-soc.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-ps3.c usb/ps3: Add missing annotations 2009-06-16 14:17:32 +10:00
ohci-pxa27x.c [ARM] pxa: don't pass a consumer clock name for devices with unique clocks 2008-11-27 12:38:23 +00:00
ohci-q.c USB: quirk PLL power down mode 2008-08-13 17:32:58 -07:00
ohci-s3c2410.c USB: S3C: Move usb-control.h to platform include 2009-03-24 16:20:45 -07:00
ohci-sa1111.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-sh.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-sm501.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-ssb.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
ohci-tmio.c usb: struct device - replace bus_id with dev_name(), dev_set_name() 2009-01-07 09:59:52 -08:00
ohci.h usb: remove code associated with !CONFIG_PPC_MERGE 2008-10-17 14:40:57 -07:00
oxu210hp-hcd.c USB: host: fix sparse warning: Using plain integer as NULL pointer 2009-03-24 16:20:44 -07:00
oxu210hp.h USB: replace uses of __constant_{endian} 2009-03-24 16:20:33 -07:00
pci-quirks.c USB: xhci: BIOS handoff and HW initialization. 2009-06-15 21:44:48 -07:00
pci-quirks.h
r8a66597-hcd.c USB: r8a66597-hcd: use platform_data instead of module_param 2009-06-15 21:44:46 -07:00
r8a66597.h USB: r8a66597-hcd: use platform_data instead of module_param 2009-06-15 21:44:46 -07:00
sl811-hcd.c USB: make transfer_buffer_lengths in struct urb field u32 2009-03-24 16:20:36 -07:00
sl811.h Rename WARN() to WARNING() to clear the namespace 2008-07-25 10:53:29 -07:00
sl811_cs.c pcmcia: encapsulate ioaddr_t 2008-08-29 09:43:14 +02:00
u132-hcd.c USB: automatically enable RHSC interrupts 2008-08-21 10:26:38 -07:00
uhci-debug.c USB: uhci: don't use pseudo negative values 2009-03-24 16:20:36 -07:00
uhci-hcd.c USB: new flag for resume-from-hibernation 2009-06-15 21:44:44 -07:00
uhci-hcd.h USB: replace uses of __constant_{endian} 2009-03-24 16:20:33 -07:00
uhci-hub.c USB: uhci: mark root_hub_hub_des[] as const 2008-07-21 15:16:30 -07:00
uhci-q.c USB: UHCI queue: use usb_endpoint_type() 2009-06-15 21:44:42 -07:00
xhci-dbg.c USB: xhci: Remove packed attribute from structures. 2009-06-15 21:44:51 -07:00
xhci-ext-caps.h USB: xhci: Support xHCI host controllers and USB 3.0 devices. 2009-06-15 21:44:48 -07:00
xhci-hcd.c USB: xhci: Respect critical sections. 2009-06-15 21:44:51 -07:00
xhci-hub.c USB: xhci: Root hub support. 2009-06-15 21:44:48 -07:00
xhci-mem.c USB: xhci: Respect critical sections. 2009-06-15 21:44:51 -07:00
xhci-pci.c USB: xhci: Bandwidth allocation support 2009-06-15 21:44:49 -07:00
xhci-ring.c usb; xhci: Fix TRB offset calculations. 2009-06-15 21:44:51 -07:00
xhci.h USB: xhci: Respect critical sections. 2009-06-15 21:44:51 -07:00