diff options
author | Hendrik Iben <Hendrik_Iben@web.de> | 2010-10-04 09:39:49 -0400 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2010-10-04 09:39:53 -0400 |
commit | 2c6118e43040034d80894daeba41960bf0035b31 (patch) | |
tree | dce7f5f0d27e830f4aae0c72eb459553f2a72f4a | |
parent | 32c88cbc3080f43c429f6456aa9cd845e37f3778 (diff) |
HID: force feedback support for Logitech RumblePad gamepad
This patch adds force feedback support for Logitech WingMan RumblePad
gamepads by extending the Logitech Rumblepad 2 force feedback code.
Signed-off-by: Hendrik Iben <Hendrik_Iben@web.de>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r-- | drivers/hid/Kconfig | 4 | ||||
-rw-r--r-- | drivers/hid/hid-core.c | 1 | ||||
-rw-r--r-- | drivers/hid/hid-ids.h | 1 | ||||
-rw-r--r-- | drivers/hid/hid-lg.c | 3 | ||||
-rw-r--r-- | drivers/hid/hid-lg2ff.c | 4 |
5 files changed, 9 insertions, 4 deletions
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index 6664c573cf33..3892ff5fa11b 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig | |||
@@ -220,12 +220,12 @@ config LOGITECH_FF | |||
220 | force feedback. | 220 | force feedback. |
221 | 221 | ||
222 | config LOGIRUMBLEPAD2_FF | 222 | config LOGIRUMBLEPAD2_FF |
223 | bool "Logitech Rumblepad 2 force feedback support" | 223 | bool "Logitech RumblePad/Rumblepad 2 force feedback support" |
224 | depends on HID_LOGITECH | 224 | depends on HID_LOGITECH |
225 | select INPUT_FF_MEMLESS | 225 | select INPUT_FF_MEMLESS |
226 | help | 226 | help |
227 | Say Y here if you want to enable force feedback support for Logitech | 227 | Say Y here if you want to enable force feedback support for Logitech |
228 | Rumblepad 2 devices. | 228 | RumblePad and Rumblepad 2 devices. |
229 | 229 | ||
230 | config LOGIG940_FF | 230 | config LOGIG940_FF |
231 | bool "Logitech Flight System G940 force feedback support" | 231 | bool "Logitech Flight System G940 force feedback support" |
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c index 19d45473f24f..0120557022bf 100644 --- a/drivers/hid/hid-core.c +++ b/drivers/hid/hid-core.c | |||
@@ -1326,6 +1326,7 @@ static const struct hid_device_id hid_blacklist[] = { | |||
1326 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_CORDLESS_DESKTOP_LX500) }, | 1326 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_CORDLESS_DESKTOP_LX500) }, |
1327 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_EXTREME_3D) }, | 1327 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_EXTREME_3D) }, |
1328 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEEL) }, | 1328 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEEL) }, |
1329 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD_CORD) }, | ||
1329 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD) }, | 1330 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD) }, |
1330 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2_2) }, | 1331 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2_2) }, |
1331 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WINGMAN_F3D) }, | 1332 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WINGMAN_F3D) }, |
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h index 6b111e1e2df1..79f0304aee8a 100644 --- a/drivers/hid/hid-ids.h +++ b/drivers/hid/hid-ids.h | |||
@@ -339,6 +339,7 @@ | |||
339 | #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 | 339 | #define USB_DEVICE_ID_LOGITECH_RECEIVER 0xc101 |
340 | #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 | 340 | #define USB_DEVICE_ID_LOGITECH_HARMONY_FIRST 0xc110 |
341 | #define USB_DEVICE_ID_LOGITECH_HARMONY_LAST 0xc14f | 341 | #define USB_DEVICE_ID_LOGITECH_HARMONY_LAST 0xc14f |
342 | #define USB_DEVICE_ID_LOGITECH_RUMBLEPAD_CORD 0xc20a | ||
342 | #define USB_DEVICE_ID_LOGITECH_RUMBLEPAD 0xc211 | 343 | #define USB_DEVICE_ID_LOGITECH_RUMBLEPAD 0xc211 |
343 | #define USB_DEVICE_ID_LOGITECH_EXTREME_3D 0xc215 | 344 | #define USB_DEVICE_ID_LOGITECH_EXTREME_3D 0xc215 |
344 | #define USB_DEVICE_ID_LOGITECH_RUMBLEPAD2 0xc218 | 345 | #define USB_DEVICE_ID_LOGITECH_RUMBLEPAD2 0xc218 |
diff --git a/drivers/hid/hid-lg.c b/drivers/hid/hid-lg.c index 8989f151e0d7..9e92c27002ca 100644 --- a/drivers/hid/hid-lg.c +++ b/drivers/hid/hid-lg.c | |||
@@ -7,6 +7,7 @@ | |||
7 | * Copyright (c) 2006-2007 Jiri Kosina | 7 | * Copyright (c) 2006-2007 Jiri Kosina |
8 | * Copyright (c) 2007 Paul Walmsley | 8 | * Copyright (c) 2007 Paul Walmsley |
9 | * Copyright (c) 2008 Jiri Slaby | 9 | * Copyright (c) 2008 Jiri Slaby |
10 | * Copyright (c) 2010 Hendrik Iben | ||
10 | */ | 11 | */ |
11 | 12 | ||
12 | /* | 13 | /* |
@@ -361,6 +362,8 @@ static const struct hid_device_id lg_devices[] = { | |||
361 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEEL), | 362 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_WHEEL), |
362 | .driver_data = LG_NOGET | LG_FF }, | 363 | .driver_data = LG_NOGET | LG_FF }, |
363 | 364 | ||
365 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD_CORD), | ||
366 | .driver_data = LG_FF2 }, | ||
364 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD), | 367 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD), |
365 | .driver_data = LG_FF }, | 368 | .driver_data = LG_FF }, |
366 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2_2), | 369 | { HID_USB_DEVICE(USB_VENDOR_ID_LOGITECH, USB_DEVICE_ID_LOGITECH_RUMBLEPAD2_2), |
diff --git a/drivers/hid/hid-lg2ff.c b/drivers/hid/hid-lg2ff.c index d888f1e6794f..4258253c36b3 100644 --- a/drivers/hid/hid-lg2ff.c +++ b/drivers/hid/hid-lg2ff.c | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Force feedback support for Logitech Rumblepad 2 | 2 | * Force feedback support for Logitech RumblePad and Rumblepad 2 |
3 | * | 3 | * |
4 | * Copyright (c) 2008 Anssi Hannula <anssi.hannula@gmail.com> | 4 | * Copyright (c) 2008 Anssi Hannula <anssi.hannula@gmail.com> |
5 | */ | 5 | */ |
@@ -110,7 +110,7 @@ int lg2ff_init(struct hid_device *hid) | |||
110 | 110 | ||
111 | usbhid_submit_report(hid, report, USB_DIR_OUT); | 111 | usbhid_submit_report(hid, report, USB_DIR_OUT); |
112 | 112 | ||
113 | dev_info(&hid->dev, "Force feedback for Logitech Rumblepad 2 by " | 113 | dev_info(&hid->dev, "Force feedback for Logitech RumblePad/Rumblepad 2 by " |
114 | "Anssi Hannula <anssi.hannula@gmail.com>\n"); | 114 | "Anssi Hannula <anssi.hannula@gmail.com>\n"); |
115 | 115 | ||
116 | return 0; | 116 | return 0; |