aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimon Wood <simon@mungewell.org>2015-11-19 18:42:15 -0500
committerJiri Kosina <jkosina@suse.cz>2015-11-20 04:30:00 -0500
commit0b1804e3d6ee820303cd07fd5b9579db6110840b (patch)
treef25dcb2024448513d5cc81660536a04b10ed543c
parentb466c1dd73d5303a313fb0c962e4eb5879bc1336 (diff)
HID: hid-logitech-hidpp: G920 remove deadzones
Ensure that the G920 is not given the default deadzones. Signed-off-by: Simon Wood <simon@mungewell.org> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/hid-logitech-hidpp.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/drivers/hid/hid-logitech-hidpp.c b/drivers/hid/hid-logitech-hidpp.c
index fc553e3f948d..f2a481125522 100644
--- a/drivers/hid/hid-logitech-hidpp.c
+++ b/drivers/hid/hid-logitech-hidpp.c
@@ -1441,6 +1441,25 @@ static int hidpp_input_mapping(struct hid_device *hdev, struct hid_input *hi,
1441 return 0; 1441 return 0;
1442} 1442}
1443 1443
1444static int hidpp_input_mapped(struct hid_device *hdev, struct hid_input *hi,
1445 struct hid_field *field, struct hid_usage *usage,
1446 unsigned long **bit, int *max)
1447{
1448 struct hidpp_device *hidpp = hid_get_drvdata(hdev);
1449
1450 /* Ensure that Logitech G920 is not given a default fuzz/flat value */
1451 if (hidpp->quirks & HIDPP_QUIRK_CLASS_G920) {
1452 if (usage->type == EV_ABS && (usage->code == ABS_X ||
1453 usage->code == ABS_Y || usage->code == ABS_Z ||
1454 usage->code == ABS_RZ)) {
1455 field->application = HID_GD_MULTIAXIS;
1456 }
1457 }
1458
1459 return 0;
1460}
1461
1462
1444static void hidpp_populate_input(struct hidpp_device *hidpp, 1463static void hidpp_populate_input(struct hidpp_device *hidpp,
1445 struct input_dev *input, bool origin_is_hid_core) 1464 struct input_dev *input, bool origin_is_hid_core)
1446{ 1465{
@@ -1875,6 +1894,7 @@ static struct hid_driver hidpp_driver = {
1875 .raw_event = hidpp_raw_event, 1894 .raw_event = hidpp_raw_event,
1876 .input_configured = hidpp_input_configured, 1895 .input_configured = hidpp_input_configured,
1877 .input_mapping = hidpp_input_mapping, 1896 .input_mapping = hidpp_input_mapping,
1897 .input_mapped = hidpp_input_mapped,
1878}; 1898};
1879 1899
1880module_hid_driver(hidpp_driver); 1900module_hid_driver(hidpp_driver);