aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElias Vanderstuyft <Elias.vds@gmail.com>2013-10-07 12:48:12 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-12-04 13:57:19 -0500
commit82a645a3ecd757206d4d6be182d7e47d50a7dd4c (patch)
treec8a8c3d1a8e1926cb455895595d1e890cc307a60
parentbe8c7f057c6c9257956eb796b58500c5c4f939c3 (diff)
HID: logitech - lg2ff: Add IDs for Formula Vibration Feedback Wheel
commit bd04363d3990c0727b7512a79a08c68436878bb0 upstream. Add USB IDs for Logitech Formula Vibration Feedback Wheel (046d:ca04). The lg2ff force feedback subdriver is used for vibration and HID_GD_MULTIAXIS is set to avoid deadzone like other Logitech wheels. Kconfig description etc are also updated accordingly. Signed-off-by: Elias Vanderstuyft <Elias.vds@gmail.com> [anssi.hannula@iki.fi: added description and CCs] Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi> Signed-off-by: Simon Wood <simon@mungewell.org> Signed-off-by: Jiri Kosina <jkosina@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/hid/Kconfig8
-rw-r--r--drivers/hid/hid-core.c1
-rw-r--r--drivers/hid/hid-ids.h1
-rw-r--r--drivers/hid/hid-lg.c3
-rw-r--r--drivers/hid/hid-lg2ff.c2
5 files changed, 11 insertions, 4 deletions
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig
index fb52f3f6de80..304c02b9e0c8 100644
--- a/drivers/hid/Kconfig
+++ b/drivers/hid/Kconfig
@@ -352,12 +352,14 @@ config LOGITECH_FF
352 force feedback. 352 force feedback.
353 353
354config LOGIRUMBLEPAD2_FF 354config LOGIRUMBLEPAD2_FF
355 bool "Logitech RumblePad/Rumblepad 2 force feedback support" 355 bool "Logitech force feedback support (variant 2)"
356 depends on HID_LOGITECH 356 depends on HID_LOGITECH
357 select INPUT_FF_MEMLESS 357 select INPUT_FF_MEMLESS
358 help 358 help
359 Say Y here if you want to enable force feedback support for Logitech 359 Say Y here if you want to enable force feedback support for:
360 RumblePad and Rumblepad 2 devices. 360 - Logitech RumblePad
361 - Logitech Rumblepad 2
362 - Logitech Formula Vibration Feedback Wheel
361 363
362config LOGIG940_FF 364config LOGIG940_FF
363 bool "Logitech Flight System G940 force feedback support" 365 bool "Logitech Flight System G940 force feedback support"
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index ab9280660f02..86fd33ff9a8d 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1703,6 +1703,7 @@ static const struct hid_device_id hid_have_special_driver[] = {
1703 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_FLIGHT_SYSTEM_G940) }, 1703 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_FLIGHT_SYSTEM_G940) },
1704 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL) }, 1704 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL) },
1705 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2) }, 1705 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2) },
1706 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_VIBRATION_WHEEL) },
1706 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFP_WHEEL) }, 1707 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFP_WHEEL) },
1707 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFGT_WHEEL) }, 1708 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFGT_WHEEL) },
1708 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G25_WHEEL) }, 1709 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G25_WHEEL) },
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 96e055ea3cf1..ae821939730b 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -562,6 +562,7 @@
562#define USB_DEVICE_ID_DINOVO_EDGE 0xc714 562#define USB_DEVICE_ID_DINOVO_EDGE 0xc714
563#define USB_DEVICE_ID_DINOVO_MINI 0xc71f 563#define USB_DEVICE_ID_DINOVO_MINI 0xc71f
564#define USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2 0xca03 564#define USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2 0xca03
565#define USB_DEVICE_ID_LOGITECH_VIBRATION_WHEEL 0xca04
565 566
566#define USB_VENDOR_ID_LUMIO 0x202e 567#define USB_VENDOR_ID_LUMIO 0x202e
567#define USB_DEVICE_ID_CRYSTALTOUCH 0x0006 568#define USB_DEVICE_ID_CRYSTALTOUCH 0x0006
diff --git a/drivers/hid/hid-lg.c b/drivers/hid/hid-lg.c
index 6f12ecd36c88..c2c7dab7d2c4 100644
--- a/drivers/hid/hid-lg.c
+++ b/drivers/hid/hid-lg.c
@@ -492,6 +492,7 @@ static int lg_input_mapped(struct hid_device *hdev, struct hid_input *hi,
492 case USB_DEVICE_ID_LOGITECH_G27_WHEEL: 492 case USB_DEVICE_ID_LOGITECH_G27_WHEEL:
493 case USB_DEVICE_ID_LOGITECH_WII_WHEEL: 493 case USB_DEVICE_ID_LOGITECH_WII_WHEEL:
494 case USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2: 494 case USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2:
495 case USB_DEVICE_ID_LOGITECH_VIBRATION_WHEEL:
495 field->application = HID_GD_MULTIAXIS; 496 field->application = HID_GD_MULTIAXIS;
496 break; 497 break;
497 default: 498 default:
@@ -639,6 +640,8 @@ static const struct hid_device_id lg_devices[] = {
639 .driver_data = LG_NOGET | LG_FF4 }, 640 .driver_data = LG_NOGET | LG_FF4 },
640 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2), 641 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_MOMO_WHEEL2),
641 .driver_data = LG_FF4 }, 642 .driver_data = LG_FF4 },
643 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_VIBRATION_WHEEL),
644 .driver_data = LG_FF2 },
642 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G25_WHEEL), 645 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_G25_WHEEL),
643 .driver_data = LG_FF4 }, 646 .driver_data = LG_FF4 },
644 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFGT_WHEEL), 647 { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_DFGT_WHEEL),
diff --git a/drivers/hid/hid-lg2ff.c b/drivers/hid/hid-lg2ff.c
index 1a42eaa6ca02..0e3fb1a7e421 100644
--- a/drivers/hid/hid-lg2ff.c
+++ b/drivers/hid/hid-lg2ff.c
@@ -95,7 +95,7 @@ int lg2ff_init(struct hid_device *hid)
95 95
96 hid_hw_request(hid, report, HID_REQ_SET_REPORT); 96 hid_hw_request(hid, report, HID_REQ_SET_REPORT);
97 97
98 hid_info(hid, "Force feedback for Logitech RumblePad/Rumblepad 2 by Anssi Hannula <anssi.hannula@gmail.com>\n"); 98 hid_info(hid, "Force feedback for Logitech variant 2 rumble devices by Anssi Hannula <anssi.hannula@gmail.com>\n");
99 99
100 return 0; 100 return 0;
101} 101}