diff options
-rw-r--r-- | drivers/hid/hid-logitech-hidpp.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c index e77658cd037c..8e9cb25f45cb 100644 --- a/drivers/hid/hid-logitech-hidpp.c +++ b/drivers/hid/hid-logitech-hidpp.c | |||
@@ -28,6 +28,11 @@ MODULE_LICENSE("GPL"); | |||
28 | MODULE_AUTHOR("Benjamin Tissoires <benjamin.tissoires@gmail.com>"); | 28 | MODULE_AUTHOR("Benjamin Tissoires <benjamin.tissoires@gmail.com>"); |
29 | MODULE_AUTHOR("Nestor Lopez Casado <nlopezcasad@logitech.com>"); | 29 | MODULE_AUTHOR("Nestor Lopez Casado <nlopezcasad@logitech.com>"); |
30 | 30 | ||
31 | static bool disable_raw_mode; | ||
32 | module_param(disable_raw_mode, bool, 0644); | ||
33 | MODULE_PARM_DESC(disable_raw_mode, | ||
34 | "Disable Raw mode reporting for touchpads and keep firmware gestures."); | ||
35 | |||
31 | #define REPORT_ID_HIDPP_SHORT 0x10 | 36 | #define REPORT_ID_HIDPP_SHORT 0x10 |
32 | #define REPORT_ID_HIDPP_LONG 0x11 | 37 | #define REPORT_ID_HIDPP_LONG 0x11 |
33 | 38 | ||
@@ -1188,6 +1193,11 @@ static int hidpp_probe(struct hid_device *hdev, const struct hid_device_id *id) | |||
1188 | 1193 | ||
1189 | hidpp->quirks = id->driver_data; | 1194 | hidpp->quirks = id->driver_data; |
1190 | 1195 | ||
1196 | if (disable_raw_mode) { | ||
1197 | hidpp->quirks &= ~HIDPP_QUIRK_CLASS_WTP; | ||
1198 | hidpp->quirks &= ~HIDPP_QUIRK_DELAYED_INIT; | ||
1199 | } | ||
1200 | |||
1191 | if (hidpp->quirks & HIDPP_QUIRK_CLASS_WTP) { | 1201 | if (hidpp->quirks & HIDPP_QUIRK_CLASS_WTP) { |
1192 | ret = wtp_allocate(hdev, id); | 1202 | ret = wtp_allocate(hdev, id); |
1193 | if (ret) | 1203 | if (ret) |