linux/drivers/usb/host
Dmitry Torokhov e103cc4da5 USB: xhci - fix interval calculation for FS isoc endpoints
commit cd3c18ba2f upstream.

Full-speed isoc endpoints specify interval in exponent based form in
frames, not microframes, so we need to adjust accordingly.

NEC xHCI host controllers will return an error code of 0x11 if a full
speed isochronous endpoint is added with the Interval field set to
something less than 3 (2^3 = 8 microframes, or one frame).  It is
impossible for a full speed device to have an interval smaller than one
frame.

This was always an issue in the xHCI driver, but commit
dfa49c4ad1 "USB: xhci - fix math in
xhci_get_endpoint_interval()" removed the clamping of the minimum value
in the Interval field, which revealed this bug.

This needs to be backported to stable kernels back to 2.6.31.

Reported-by: Matt Evans <matt@ozlabs.org>
Signed-off-by: Dmitry Torokhov <dtor@vmware.com>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2011-06-23 15:24:07 -07:00
..
whci
ehci-atmel.c
ehci-au1xxx.c
ehci-dbg.c
ehci-fsl.c
ehci-fsl.h
ehci-hcd.c USB: EHCI: fix DMA deallocation bug 2011-02-17 15:36:47 -08:00
ehci-hub.c USB: EHCI: clear PHCD before resuming 2010-07-05 11:10:37 -07:00
ehci-ixp4xx.c
ehci-mem.c USB: EHCI: defer reclamation of siTDs 2010-05-12 14:56:59 -07:00
ehci-orion.c
ehci-pci.c USB: EHCI: ASPM quirk of ISOC on AMD Hudson 2011-02-17 15:36:47 -08:00
ehci-ppc-of.c USB: ehci-ppc-of: problems in unwind 2010-09-20 13:17:46 -07:00
ehci-ps3.c
ehci-q.c USB: EHCI: unlink unused QHs when the controller is stopped 2011-04-22 08:44:27 -07:00
ehci-sched.c USB: EHCI: ASPM quirk of ISOC on AMD SB800 2011-02-17 15:36:42 -08:00
ehci-w90x900.c
ehci.h USB: EHCI: ASPM quirk of ISOC on AMD SB800 2011-02-17 15:36:42 -08:00
fhci-dbg.c
fhci-hcd.c
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c
fhci-tds.c
fhci.h
hwa-hc.c
isp116x-hcd.c
isp116x.h
isp1362-hcd.c
isp1362.h
isp1760-hcd.c
isp1760-hcd.h
isp1760-if.c
Kconfig
Makefile
ohci-at91.c
ohci-au1xxx.c
ohci-dbg.c
ohci-ep93xx.c
ohci-hcd.c OHCI: work around for nVidia shutdown problem 2011-03-02 09:46:36 -05:00
ohci-hub.c USB: OHCI: don't look at the root hub to get the number of ports 2010-05-12 14:57:02 -07:00
ohci-lh7a404.c
ohci-mem.c
ohci-omap.c
ohci-pci.c OHCI: fix regression caused by nVidia shutdown workaround 2011-06-23 15:24:04 -07:00
ohci-pnx4008.c
ohci-pnx8550.c
ohci-ppc-of.c
ohci-ppc-soc.c
ohci-ps3.c
ohci-pxa27x.c
ohci-q.c
ohci-s3c2410.c
ohci-sa1111.c
ohci-sh.c
ohci-sm501.c
ohci-ssb.c
ohci-tmio.c
ohci.h OHCI: work around for nVidia shutdown problem 2011-03-02 09:46:36 -05:00
oxu210hp-hcd.c
oxu210hp.h
pci-quirks.c OHCI: work around for nVidia shutdown problem 2011-03-02 09:46:36 -05:00
pci-quirks.h
r8a66597-hcd.c usb: r8a66597-hcd: fix removed from an attached hub 2010-04-01 15:58:36 -07:00
r8a66597.h
sl811_cs.c
sl811-hcd.c
sl811.h
u132-hcd.c
uhci-debug.c
uhci-hcd.c
uhci-hcd.h
uhci-hub.c
uhci-q.c
xhci-dbg.c
xhci-ext-caps.h
xhci-hcd.c USB: xhci: Wait for controller to be ready after reset. 2010-07-05 11:11:07 -07:00
xhci-hub.c
xhci-mem.c USB: xhci - fix interval calculation for FS isoc endpoints 2011-06-23 15:24:07 -07:00
xhci-pci.c
xhci-ring.c xhci: Fix cycle bit calculation during stall handling. 2011-03-23 13:16:47 -07:00
xhci.h USB: xhci - fix unsafe macro definitions 2011-04-22 08:44:29 -07:00