linux/drivers
Sarah Sharp 8420d82e3a USB: Fix connected device switch to Inactive state.
[This is upstream commit d3b9d7a905.
It needs to be backported to kernels as old as 3.2, because it fixes the
buggy commit 9dbcaec830 "USB: Handle warm
reset failure on empty port."]

A USB 3.0 device can transition to the Inactive state if a U1 or U2 exit
transition fails.  The current code in hub_events simply issues a warm
reset, but does not call any pre-reset or post-reset driver methods (or
unbind/rebind drivers without them).  Therefore the drivers won't know
their device has just been reset.

hub_events should instead call usb_reset_device.  This means
hub_port_reset now needs to figure out whether it should issue a warm
reset or a hot reset.

Remove the FIXME note about needing disconnect() for a NOTATTACHED
device.  This patch fixes that.

Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
Acked-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-03-14 11:29:52 -07:00
..
accessibility
acpi ACPI: Add DMI entry for Sony VGN-FW41E_H 2013-03-04 06:06:44 +08:00
amba ARM: 7366/3: amba: Remove AMBA level regulator support 2012-04-13 14:04:08 +01:00
ata ata_piix: reenable MS Virtual PC guests 2013-03-14 11:29:42 -07:00
atm atm/iphase: rename fregt_t -> ffreg_t 2013-02-14 10:49:05 -08:00
auxdisplay
base drivercore: Fix ordering between deferred_probe and exiting initcalls 2013-02-28 06:59:01 -08:00
bcma bcma: mips: fix clearing device IRQ 2013-01-17 08:50:41 -08:00
block xen/blkback: Don't trust the handle from the frontend. 2013-03-04 06:06:40 +08:00
bluetooth Bluetooth: ath3k: Add support for VAIO VPCEH [0489:e027] 2013-01-11 09:07:17 -08:00
cdrom
char hw_random: make buffer usable in scatterlist. 2013-03-14 11:29:42 -07:00
clk clk: Check parent for NULL in clk_change_rate 2012-07-19 08:58:59 -07:00
clocksource Revert "clocksource: Load the ACPI PM clocksource asynchronously" 2012-04-12 00:05:05 +02:00
connector
cpufreq Fix memory leak in cpufreq stats. 2013-03-14 11:29:51 -07:00
cpuidle Merge branches 'idle-fix' and 'misc' into release 2012-04-06 21:48:59 -04:00
crypto crypto: mv_cesa requires on CRYPTO_HASH to build 2012-05-15 01:10:06 +00:00
dca dca: check against empty dca_domains list before unregister provider 2013-02-28 06:59:06 -08:00
devfreq ARM: global cleanups 2012-03-27 16:03:32 -07:00
dio
dma ioat: Fix DMA memory sync direction correct flag 2013-01-27 20:47:44 -08:00
edac EDAC: Test correct variable in ->store function 2013-02-03 18:24:41 -06:00
eisa
firewire firewire: add minor number range check to fw_device_init() 2013-03-04 06:06:41 +08:00
firmware dmi_scan: fix missing check for _DMI_ signature in smbios_present() 2013-03-14 11:29:51 -07:00
gpio gpiolib: Don't return -EPROBE_DEFER to sysfs, or for invalid gpios 2012-11-05 09:50:41 +01:00
gpu drm/radeon: add primary dac adj quirk for R200 board 2013-03-14 11:29:49 -07:00
hid HID: logitech-dj: do not directly call hid_output_raw_report() during probe 2013-03-14 11:29:50 -07:00
hsi HSI: hsi_char: Remove max_data_size from sysfs 2012-04-23 14:23:32 +03:00
hv Drivers: hv: Cleanup error handling in vmbus_open() 2012-10-31 10:02:58 -07:00
hwmon hwmon: (pmbus/ltc2978) Use detected chip ID to select supported functionality 2013-03-14 11:29:49 -07:00
hwspinlock hwspinlock/core: use global ID to register hwspinlocks on multiple devices 2012-07-16 09:04:25 -07:00
i2c i2c-i801: Add Device IDs for Intel Lynx Point-LP PCH 2012-09-14 10:00:33 -07:00
ide Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
idle simple_open: automatically convert to simple_open() 2012-04-05 15:25:50 -07:00
ieee802154
infiniband RDMA/nes: Fix for terminate timer crash 2013-01-17 08:50:51 -08:00
input Input: sentelic - only report position of first finger as ST coordinates 2013-01-11 09:06:56 -08:00
iommu iommu/amd: Initialize device table after dma_ops 2013-03-04 06:06:37 +08:00
isdn isdn/gigaset: fix zero size border case in debug dump 2013-02-14 10:49:04 -08:00
leds drivers/leds/leds-lp5521.c: fix lp5521_read() error handling 2012-12-03 11:46:36 -08:00
lguest
macintosh Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
mca
md md: raid0: fix error return from create_stripe_zones. 2013-03-14 11:29:49 -07:00
media media: rc: unlock on error in show_protocols() 2013-03-04 06:06:41 +08:00
memstick memstick: remove the second argument of k[un]map_atomic() 2012-03-20 21:48:19 +08:00
message Disintegrate and delete asm/system.h 2012-03-28 15:58:21 -07:00
mfd mfd: Only unregister platform devices allocated by the mfd core 2013-01-17 08:50:45 -08:00
misc SGI-XP: handle non-fatal traps 2013-01-11 09:06:29 -08:00
mmc mmc: sdhci-esdhc-imx: fix host version read 2013-02-28 06:59:05 -08:00
mtd mtd: nand: gpmi: reset BCH earlier, too, to avoid NAND startup problems 2013-01-17 08:50:45 -08:00
net e1000e: fix pci-device enable-counter balance 2013-03-14 11:29:50 -07:00
nfc NFC: pn533: Fix mem leak in pn533_in_dep_link_up 2012-12-03 11:47:12 -08:00
nubus Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
of gpio: Fix range check in of_gpio_simple_xlate() 2012-04-10 14:20:56 -06:00
oprofile oprofile: perf: use NR_CPUS instead or nr_cpumask_bits for static array 2012-07-16 09:04:21 -07:00
parisc parisc: move definition of PAGE0 to asm/page.h 2012-05-10 15:12:08 -07:00
parport
pci PCI/PM: Clean up PME state when removing a device 2013-02-17 10:49:26 -08:00
pcmcia pcmcia/vrc4171: Add missing spinlock init 2013-02-28 06:59:05 -08:00
pinctrl pinctrl: tegra: set low power mode bank width to 2 2012-10-28 10:14:14 -07:00
platform samsung-laptop: Disable on EFI hardware 2013-02-14 10:48:54 -08:00
pnp pnpacpi: fix incorrect TEST_ALPHA() test 2013-01-11 09:06:29 -08:00
power ab8500_btemp: Demote initcall sequence 2013-03-04 06:06:44 +08:00
pps
ps3
ptp ptp_pch: Add missing #include <linux/slab.h> 2012-05-16 14:44:44 -04:00
rapidio rapidio/tsi721: fix unused variable compiler warning 2012-09-14 10:00:20 -07:00
regulator regulator: wm831x: Set the new rather than old value for DVS VSEL 2013-01-17 08:50:41 -08:00
remoteproc remoteproc: fix a potential NULL-dereference on cleanup 2012-10-07 08:32:28 -07:00
rpmsg rpmsg: fix dependency on initialization order 2012-07-19 08:58:57 -07:00
rtc drivers/rtc/rtc-isl1208.c: call rtc_update_irq() from the alarm irq handler 2013-02-11 08:47:18 -08:00
s390 KVM: s390: Handle hosts not supporting s390-virtio. 2013-02-28 06:59:01 -08:00
sbus Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
scsi SCSI: storvsc: Initialize the sglist 2013-03-14 11:29:42 -07:00
sfi
sh SuperH updates for 3.4 merge window 2012-03-30 00:09:17 -07:00
sn
spi spi/pl022: disable port when unused 2012-08-09 08:31:38 -07:00
ssb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2012-03-20 21:04:47 -07:00
staging staging: comedi: check s->async for poll(), read() and write() 2013-03-04 06:06:45 +08:00
target target/pscsi: Fix page increment 2013-03-14 11:29:42 -07:00
tc
thermal thermal: Fix for setting the thermal zone mode to enable/disable 2012-03-22 01:10:18 -04:00
tty fb: Yet another band-aid for fixing lockdep mess 2013-02-28 06:59:05 -08:00
uio
usb USB: Fix connected device switch to Inactive state. 2013-03-14 11:29:52 -07:00
uwb uwb: fix error handling 2012-04-18 13:15:51 -07:00
vhost vhost: fix length for cross region descriptor 2013-03-04 06:06:43 +08:00
video fb: Yet another band-aid for fixing lockdep mess 2013-02-28 06:59:05 -08:00
virt
virtio virtio: force vring descriptors to be allocated from lowmem 2013-01-11 09:06:47 -08:00
vlynq
w1
watchdog hpwdt: Fix kdump issue in hpwdt 2012-10-02 10:30:08 -07:00
xen xen: close evtchn port if binding to irq fails 2013-02-28 06:59:00 -08:00
zorro
Kconfig Merge branch 'for-next' of git://gitorious.org/kernel-hsi/kernel-hsi 2012-04-02 09:50:40 -07:00
Makefile Merge branch 'for-next' of git://gitorious.org/kernel-hsi/kernel-hsi 2012-04-02 09:50:40 -07:00