]> git.baikalelectronics.ru Git - kernel.git/commit
HID: hidp: fallback to input session properly if hid is blacklisted
authorLamarque V. Souza <lamarque@gmail.com>
Thu, 6 Dec 2012 14:39:55 +0000 (12:39 -0200)
committerJiri Kosina <jkosina@suse.cz>
Fri, 7 Dec 2012 10:12:27 +0000 (11:12 +0100)
commitf572eb19155112828dcea26ff44436c7e8cbb389
treeb88ae9ea27c1c46a7e991778ad91e4b89b36cda9
parent7fdbe779aeb11a718b28fe067aeb8e783dbd4223
HID: hidp: fallback to input session properly if hid is blacklisted

This patch against kernel 3.7.0-rc8 fixes a kernel oops when turning on the
bluetooth mouse with id 0458:0058 [1].

The mouse in question supports both input and hid sessions, however it is
blacklisted in drivers/hid/hid-core.c so the input session is one that should
be used. Long ago (around kernel 3.0.0) some changes in the bluetooth
subsystem made the kernel do not fallback to input session when hid session is
not supported or blacklisted. This patch restore that behaviour by making the
kernel try the input session if hid_add_device returns ENODEV.

The patch exports hid_ignore() from hid-core.c so that it can be used in the
bluetooth subsystem.

[1] https://bugzilla.kernel.org/show_bug.cgi?id=39882

Signed-off-by: Lamarque V. Souza <lamarque@gmail.com>
Acked-by: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-core.c
include/linux/hid.h
net/bluetooth/hidp/core.c