summaryrefslogtreecommitdiff
path: root/include/linux/hid.h
diff options
context:
space:
mode:
authorLamarque V. Souza <lamarque@gmail.com>2012-12-06 18:39:55 +0400
committerJiri Kosina <jkosina@suse.cz>2012-12-07 14:12:27 +0400
commit4529eefad087f97b33c0f31984d924b1f15d7bae (patch)
treeb88ae9ea27c1c46a7e991778ad91e4b89b36cda9 /include/linux/hid.h
parentae751fa82dd8e5a79932d6b55742e7e298afd733 (diff)
downloadlinux-4529eefad087f97b33c0f31984d924b1f15d7bae.tar.xz
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>
Diffstat (limited to 'include/linux/hid.h')
-rw-r--r--include/linux/hid.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/hid.h b/include/linux/hid.h
index 7e1f37db7582..abce7eb4f258 100644
--- a/include/linux/hid.h
+++ b/include/linux/hid.h
@@ -721,6 +721,7 @@ struct hid_ll_driver {
extern int hid_debug;
+extern bool hid_ignore(struct hid_device *);
extern int hid_add_device(struct hid_device *);
extern void hid_destroy_device(struct hid_device *);