linux/drivers/usb/host
Felipe Balbi 18b7ede5f7 usb: ch9: fix up MaxStreams helper
According to USB 3.0 Specification Table 9-22, if
bmAttributes [4:0] are set to zero, it means "no
streams supported", but the way this helper was
defined on Linux, we will *always* have one stream
which might cause several problems.

For example on DWC3, we would tell the controller
endpoint has streams enabled and yet start transfers
with Stream ID set to 0, which would goof up the host
side.

While doing that, convert the macro to an inline
function due to the different checks we now need.

Signed-off-by: Felipe Balbi <balbi@ti.com>
Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2012-01-04 15:52:42 -08:00
..
whci Merge branch 'for-next/dwc3' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next 2011-12-12 15:19:53 -08:00
alchemy-common.c MIPS: Alchemy: abstract USB block control register access 2011-10-24 23:34:23 +01:00
ehci-ath79.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-atmel.c USB: EHCI: Support controllers with big endian capability regs 2011-05-03 11:43:21 -07:00
ehci-au1xxx.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-cns3xxx.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-dbg.c EHCI: workaround for MosChip controller bug 2011-10-18 13:49:33 -07:00
ehci-fsl.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-fsl.h USB: ehci-fsl: add MPC5121E specific suspend and resume 2011-05-02 16:59:36 -07:00
ehci-grlib.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-hcd.c Merge branch 'for-gadget/next' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next 2011-12-22 14:05:19 -08:00
ehci-hub.c Merge 3.1-rc4 into usb-next 2011-08-29 08:56:17 -07:00
ehci-ixp4xx.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-lpm.c USB: Mark EHCI LPM functions as __maybe_unused 2011-02-17 10:47:55 -08:00
ehci-mem.c
ehci-msm.c ehci-msm : use ehci_setup 2011-07-08 14:51:29 -07:00
ehci-mv.c USB: EHCI: Add Marvell Host Controller driver 2011-12-20 12:58:13 +02:00
ehci-mxc.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-octeon.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-omap.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-orion.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-pci.c EHCI: workaround for MosChip controller bug 2011-10-18 13:49:33 -07:00
ehci-pmcmsp.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-ppc-of.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-ps3.c usb: PS3 EHCI HC reset work-around 2011-12-08 09:38:53 -08:00
ehci-pxa168.c USB: pxa168: Fix compilation error 2011-12-09 16:18:20 -08:00
ehci-q.c usb: fix number of mapped SG DMA entries 2011-12-09 16:18:19 -08:00
ehci-s5p.c Merge branch 'for-usb' of git://git.kernel.org/pub/scm/linux/kernel/git/geoff/ps3-linux into usb-next 2011-12-09 16:10:29 -08:00
ehci-sched.c EHCI : Fix a regression in the ISO scheduler 2011-11-29 09:59:29 +09:00
ehci-sh.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-spear.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-sysfs.c USB: EHCI: Allow users to override 80% max periodic bandwidth 2011-07-08 14:51:33 -07:00
ehci-tegra.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ehci-vt8500.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-w90x900.c usb: Remove ehci_reset call from ehci_run 2011-12-08 09:38:53 -08:00
ehci-xilinx-of.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ehci-xls.c Merge 3.2-rc3 into usb-linus 2011-11-26 19:46:48 -08:00
ehci.h EHCI: workaround for MosChip controller bug 2011-10-18 13:49:33 -07:00
fhci-dbg.c
fhci-hcd.c usb: convert drivers/usb/* to use module_platform_driver() 2011-11-28 06:48:32 +09:00
fhci-hub.c
fhci-mem.c
fhci-q.c
fhci-sched.c QE/FHCI: fixed the CONTROL bug 2011-10-18 13:51:34 -07:00
fhci-tds.c Fix common misspellings 2011-03-31 11:26:23 -03:00
fhci.h Fix common misspellings 2011-03-31 11:26:23 -03:00
fsl-mph-dr-of.c usb: convert drivers/usb/* to use module_platform_driver() 2011-11-28 06:48:32 +09:00
hwa-hc.c USB: Remove the SAW_IRQ hcd flag 2011-11-14 16:46:06 -08:00
imx21-dbg.c treewide: fix a few typos in comments 2011-05-10 10:16:21 +02:00
imx21-hcd.c usb: convert drivers/usb/* to use module_platform_driver() 2011-11-28 06:48:32 +09:00
imx21-hcd.h
isp116x-hcd.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
isp116x.h Fix common misspellings 2011-03-31 11:26:23 -03:00
isp1362-hcd.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
isp1362.h
isp1760-hcd.c usb/isp1760: Fix race condition memory leak 2011-11-26 20:02:47 -08:00
isp1760-hcd.h usb/isp1760: Allow to optionally trigger low-level chip reset via GPIOLIB. 2011-10-19 13:29:06 -07:00
isp1760-if.c USB: isp1760: Fix endianness-sensitivity in of_isp1760_probe() 2011-12-09 16:18:18 -08:00
Kconfig USB: EHCI: Add Marvell Host Controller driver 2011-12-20 12:58:13 +02:00
Makefile Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus 2011-11-03 13:28:14 -07:00
octeon2-common.c usb: Configure octeon2 glue logic for proper uSOF cycle period. 2011-05-03 10:09:32 -07:00
ohci-at91.c USB: at91: at91-ohci: fix set/get power 2011-11-14 15:52:11 -08:00
ohci-ath79.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-au1xxx.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-cns3xxx.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
ohci-da8xx.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-dbg.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-ep93xx.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-hcd.c Merge 3.2-rc3 into usb-linus 2011-11-26 19:46:48 -08:00
ohci-hub.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-jz4740.c
ohci-mem.c
ohci-octeon.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-omap3.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-omap.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-pci.c Merge 3.2-rc3 into usb-linus 2011-11-26 19:46:48 -08:00
ohci-pnx4008.c Merge branch 'gpio' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm 2011-10-27 08:39:10 +02:00
ohci-pnx8550.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-ppc-of.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-ppc-soc.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-ps3.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-pxa27x.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-q.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-s3c2410.c USB: ohci-s3c2410: add PM support 2011-11-30 20:08:26 +09:00
ohci-sa1111.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-sh.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-sm501.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-spear.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-ssb.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
ohci-tmio.c OHCI: remove uses of hcd->state 2011-11-18 10:51:00 -08:00
ohci-xls.c usb: OHCI/EHCI-XLS: Use resource_size v3 2011-11-15 10:21:56 -08:00
ohci.h Merge 3.2-rc3 into usb-linus 2011-11-26 19:46:48 -08:00
oxu210hp-hcd.c usb: convert drivers/usb/* to use module_platform_driver() 2011-11-28 06:48:32 +09:00
oxu210hp.h
pci-quirks.c OHCI: final fix for NVIDIA problems (I hope) 2011-11-18 11:18:45 -08:00
pci-quirks.h Intel xhci: Support EHCI/xHCI port switching. 2011-05-27 12:07:36 -07:00
r8a66597-hcd.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
r8a66597.h usb: r8a66597-hcd: add function for external controller 2011-07-08 14:57:11 -07:00
sl811_cs.c pcmcia: Convert pcmcia_device_id declarations to const 2011-05-06 07:46:22 +02:00
sl811-hcd.c USB: irq: Remove IRQF_DISABLED 2011-09-18 01:39:36 -07:00
sl811.h
u132-hcd.c usb: u132-hcd: Drop __TIME__ usage 2011-04-13 16:36:06 -07:00
uhci-debug.c USB: UHCI: Add support for big endian descriptors 2011-05-19 16:43:20 -07:00
uhci-grlib.c treewide: Convert uses of struct resource to resource_size(ptr) 2011-06-10 14:55:36 +02:00
uhci-hcd.c USB: UHCI: improve comments and logic for root-hub suspend 2011-09-26 15:58:18 -07:00
uhci-hcd.h USB: UHCI: Add support for big endian descriptors 2011-05-19 16:43:20 -07:00
uhci-hub.c USB: UHCI: Wrap I/O register accesses 2011-05-06 18:24:01 -07:00
uhci-pci.c USB: UHCI: Move PCI specific functions to uhci-pci.c 2011-05-06 18:24:00 -07:00
uhci-q.c usb: fix number of mapped SG DMA entries 2011-12-09 16:18:19 -08:00
xhci-dbg.c Merge 3.0-rc2 into usb-linus as it's needed by some USB patches 2011-06-14 06:51:23 -07:00
xhci-ext-caps.h xHCI: Check host USB2 LPM capability 2011-09-26 15:51:09 -07:00
xhci-hub.c xHCI: Adding #define values used for hub descriptor 2011-11-26 19:58:47 -08:00
xhci-mem.c xhci: Remove debugging about ring structure allocation. 2011-12-22 15:52:48 -08:00
xhci-pci.c Revert "xHCI: reset-on-resume quirk for NEC uPD720200" 2011-12-01 10:41:40 -08:00
xhci-ring.c xhci: Better debugging for critical host errors. 2012-01-02 17:05:30 -08:00
xhci.c usb: ch9: fix up MaxStreams helper 2012-01-04 15:52:42 -08:00
xhci.h Trivial: xhci: Fix copy-paste error. 2011-12-22 15:52:41 -08:00