android_kernel_xiaomi_sm8350/drivers
Alan Stern c2f6595fbd USB: EHCI: don't send Clear-TT-Buffer following a STALL
This patch (as1304) fixes a regression in ehci-hcd.  Evidently some
hubs don't handle Clear-TT-Buffer requests correctly, so we should
avoid sending them when they don't appear to be absolutely necessary.
The reported symptom is that output on a downstream audio device cuts
out because the hub stops relaying isochronous packets.

The patch prevents Clear-TT-Buffer requests from being sent following
a STALL handshake.  In theory a STALL indicates either that the
downstream device sent a STALL or that no matching TT buffer could be
found.  In either case, the transfer is completed and the TT buffer
does not remain busy, so it doesn't need to be cleared.

Also, the patch fixes a minor flaw in the code that actually sends the
Clear-TT-Buffer requests.  Although the pipe direction isn't really
used for control transfers, it should be a Send rather than a Receive.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Reported-by: Javier Kohen <jkohen@users.sourceforge.net>
CC: David Brownell <david-b@pacbell.net>
Cc: stable <stable@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2009-11-30 16:43:15 -08:00
..
accessibility
acpi Merge branch 'thinkpad-2.6.32' into release 2009-11-25 00:43:08 -05:00
amba
ata sata_fsl: Split hard and soft reset 2009-11-19 18:18:17 -05:00
atm
auxdisplay
base PM: fix irq enable/disable in runtime PM code 2009-11-29 16:51:27 +01:00
block cciss: make device attrs static 2009-11-13 08:47:53 +01:00
bluetooth fix memory leak in fixed btusb_close 2009-11-14 12:57:08 -08:00
cdrom
char Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input 2009-11-30 13:59:51 -08:00
clocksource
connector
cpufreq [CPUFREQ] Fix stale cpufreq_cpu_governor pointer 2009-11-17 23:15:04 -05:00
cpuidle cpuidle: always return with interrupts enabled 2009-10-29 07:39:31 -07:00
crypto
dca
dio
dma shdma: fix initialization error handling 2009-11-22 12:10:10 -07:00
edac amd64_edac: fix CECCs reporting 2009-11-04 14:04:06 +01:00
eisa
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 2009-11-30 13:58:23 -08:00
firmware
gpio gpiolib: fix device_create() result check 2009-11-12 07:26:00 -08:00
gpu Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel 2009-11-30 13:57:19 -08:00
hid
hwmon hwmon: (adt7475) Fix sysfs file names 2009-11-16 12:45:40 +01:00
i2c i2c: i2c-pnx: Added missing mach/i2c.h and linux/io.h header file includes 2009-11-20 00:25:42 +00:00
ide Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/ide-2.6 2009-11-30 14:02:34 -08:00
idle
ieee1394
ieee802154 ieee802154: dont leak skbs in ieee802154_fake_xmit() 2009-11-19 13:16:21 -08:00
infiniband
input Input: lifebook - fix settings for CF-72 2009-11-16 22:27:12 -08:00
isdn Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 2009-11-18 14:54:45 -08:00
leds leds-gpio: fix possible crash on OF device unbinding 2009-11-16 11:50:42 +00:00
lguest
macintosh
mca
md md/raid5: Allow dirty-degraded arrays to be assembled when only party is degraded. 2009-11-13 17:47:00 +11:00
media V4L/DVB (13530): Fix wrong parameter order in memset 2009-11-27 18:50:43 -02:00
memstick
message
mfd mfd: Do not dereference null pointer in twl4030 error path 2009-10-27 00:20:33 +01:00
misc sgi-gru: decrapfiy options_write() function 2009-11-05 10:48:30 -08:00
mmc mmci-omap: free irq resource 2009-11-12 07:25:57 -08:00
mtd ARM: Fix warning in sa1100-flash.c 2009-11-16 16:13:35 +00:00
net b44: Fix wedge when using netconsole. 2009-11-30 00:13:28 -08:00
nubus
of of: Remove nested function 2009-10-15 09:58:27 -06:00
oprofile
parisc
parport
pci Fix handling of the HP/Acer 'DMAR at zero' BIOS error for machines with <4GiB RAM. 2009-11-19 13:42:02 -08:00
pcmcia PM / yenta: Split resume into early and late parts (rev. 4) 2009-11-03 10:54:58 +01:00
platform Merge branch 'misc-2.6.32' into release 2009-11-25 01:01:29 -05:00
pnp
power
pps pps: events reporting fix up 2009-11-12 07:26:01 -08:00
ps3
rapidio
regulator dereferencing freed memory regulator_fixed_voltage_remove() 2009-11-16 12:40:25 +00:00
rtc ARM: 5787/1: U300 COH 901 331 fixes 2009-11-16 16:15:49 +00:00
s390 [S390] sclp: undo quiesce handler override on resume 2009-11-13 15:45:03 +01:00
sbus
scsi [SCSI] bfa: declare MODULE_FIRMWARE 2009-11-11 12:21:06 -05:00
serial Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6 2009-11-30 14:02:23 -08:00
sfi
sh
sn
spi spi: error status should be negative 2009-11-17 17:40:32 -08:00
ssb ssb-pcmcia: Fix 32bit register access in early bus scanning 2009-11-10 16:21:12 -05:00
staging Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6 2009-11-30 13:58:01 -08:00
tc
telephony
thermal acpi: thermal: Add EOL to the trip_point_N_type strings 2009-11-05 17:33:24 -05:00
uio uio: pm_runtime_disable is needed if failed 2009-11-13 11:36:00 +09:00
usb USB: EHCI: don't send Clear-TT-Buffer following a STALL 2009-11-30 16:43:15 -08:00
uwb
video drivers/video/da8xx-fb.c: fix error return 2009-11-17 17:40:33 -08:00
virtio virtio: order used ring after used index read 2009-10-29 08:50:37 +10:30
vlynq
w1
watchdog [WATCHDOG] SBC-FITPC2 watchdog driver registration fix 2009-11-10 15:06:52 +00:00
xen
zorro
Kconfig
Makefile