linux-stable/drivers
Benjamin Tissoires dcd9006b1b HID: logitech-dj: do not directly call hid_output_raw_report() during probe
hid_output_raw_report() makes a direct call to usb_control_msg(). However,
some USB3 boards have shown that the usb device is not ready during the
.probe(). This blocks the entire usb device, and the paired mice, keyboards
are not functional. The dmesg output is the following:

[   11.912287] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-2/input2
[   11.912537] logitech-djreceiver 0003:046D:C52B.0003: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
[   11.912636] logitech-djreceiver: probe of 0003:046D:C52B.0003 failed with error -32

Relying on the scheduled call to usbhid_submit_report() fixes the problem.

related bugs:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1072082
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143
https://bugzilla.redhat.com/show_bug.cgi?id=840391
https://bugzilla.kernel.org/show_bug.cgi?id=49781

Reported-and-tested-by: Bob Bowles <bobjohnbowles@gmail.com>
Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2013-03-07 16:06:55 +01:00
..
accessibility
acpi Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
amba
ata Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
atm
auxdisplay
base USB patches for 3.9-rc1 2013-02-21 12:20:00 -08:00
bcma Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-02-14 14:23:33 -05:00
block Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
bluetooth Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
bus
cdrom
char Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
clk arm-soc: device tree conversions 2013-02-21 15:38:49 -08:00
clocksource arm-soc: virtualization changes 2013-02-21 15:40:16 -08:00
connector net: proc: change proc_net_remove to remove_proc_entry 2013-02-18 14:53:08 -05:00
cpufreq arm-soc: driver specific changes 2013-02-21 15:12:18 -08:00
cpuidle arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
crypto
dca
devfreq
dio
dma arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
edac Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
eisa
extcon Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
firewire Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
firmware A few fixes to reduce places where pstore might hang 2013-02-21 09:38:18 -08:00
gpio arm-soc: cleanups 2013-02-21 14:58:40 -08:00
gpu Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
hid HID: logitech-dj: do not directly call hid_output_raw_report() during probe 2013-03-07 16:06:55 +01:00
hsi
hv Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
hwmon ACPI and power management updates for 3.9-rc1 2013-02-20 11:26:56 -08:00
hwspinlock
i2c arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
ide Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
idle Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
iio Staging tree update for 3.9-rc1 2013-02-21 12:11:44 -08:00
infiniband Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
input arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
iommu Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
ipack Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
irqchip arm-soc: cleanups 2013-02-21 14:58:40 -08:00
isdn Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
leds
lguest tty/serial patches for 3.9-rc1 2013-02-21 13:41:04 -08:00
macintosh
mailbox
md
media Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
memory
memstick
message
mfd arm-soc: driver specific changes 2013-02-21 15:12:18 -08:00
misc Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
mmc Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
mtd arm-soc: device tree conversions 2013-02-21 15:38:49 -08:00
net Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
nfc Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next into for-davem 2013-02-18 13:47:13 -05:00
ntb
nubus
of Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
oprofile
parisc
parport
pci ACPI and power management updates for 3.9-rc1 2013-02-20 11:26:56 -08:00
pcmcia Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
pinctrl arm-soc: device tree conversions 2013-02-21 15:38:49 -08:00
platform Staging tree update for 3.9-rc1 2013-02-21 12:11:44 -08:00
pnp
power Staging tree update for 3.9-rc1 2013-02-21 12:11:44 -08:00
pps pps: Move timestamp read into PPS code proper 2013-02-13 10:13:58 -08:00
ps3
ptp
pwm
rapidio
regulator Merge remote-tracking branch 'regulator/topic/tps65090' into regulator-next 2013-02-19 12:43:12 +00:00
remoteproc arm-soc: multiplatform support 2013-02-21 15:20:41 -08:00
rpmsg Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
rtc Merge branch 'akpm' (incoming from Andrew) 2013-02-21 17:38:49 -08:00
s390 tty/serial patches for 3.9-rc1 2013-02-21 13:41:04 -08:00
sbus
scsi Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
sfi
sh
sn
spi arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
ssb Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless 2013-02-14 14:23:33 -05:00
staging Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
target Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
tc
thermal
tty Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2013-02-21 17:40:58 -08:00
uio
usb arm-soc: soc-specific updates 2013-02-21 15:27:22 -08:00
uwb
vfio
vhost Driver core patches for 3.9-rc1 2013-02-21 12:05:51 -08:00
video Merge branch 'akpm' (incoming from Andrew) 2013-02-21 17:38:49 -08:00
virt
virtio
vlynq
vme vme: add missing put_device() after device_register() fails 2013-02-14 09:24:14 -08:00
w1 Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
watchdog
xen ACPI and power management updates for 3.9-rc1 2013-02-20 11:26:56 -08:00
zorro
Kconfig Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00
Makefile Char/Misc driver patches for 3.9-rc1 2013-02-21 13:57:13 -08:00