aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnssi Hannula <anssi.hannula@gmail.com>2007-09-19 10:13:20 -0400
committerJiri Kosina <jkosina@suse.cz>2007-10-14 07:40:01 -0400
commit5edc41ee8717ef44f6f96347000c8f2c825c823e (patch)
tree7e9e1d09b98fa0fd8418f2cef2d0f0e52b53b928
parentd500d11615db64b99c24f92c07427879581fde4b (diff)
HID: use hid-plff driver for GreenAsia 0e8f:0003 devices
Add 0e8f:0003 into the list of devices supported by the hid-plff force feedback driver. These devices identify themselves as "GreenAsia Inc. USB Joystick " and can be either adapters or actual game controllers. The testing was done with a Köng Gaming gamepad. Signed-off-by: Anssi Hannula <anssi.hannula@gmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
-rw-r--r--drivers/hid/usbhid/Kconfig6
-rw-r--r--drivers/hid/usbhid/hid-ff.c3
-rw-r--r--drivers/hid/usbhid/hid-plff.c24
3 files changed, 22 insertions, 11 deletions
diff --git a/drivers/hid/usbhid/Kconfig b/drivers/hid/usbhid/Kconfig
index b27023f23c87..c557d7040a69 100644
--- a/drivers/hid/usbhid/Kconfig
+++ b/drivers/hid/usbhid/Kconfig
@@ -71,12 +71,12 @@ config LOGITECH_FF
71 force feedback. 71 force feedback.
72 72
73config PANTHERLORD_FF 73config PANTHERLORD_FF
74 bool "PantherLord USB/PS2 2in1 Adapter support" 74 bool "PantherLord/GreenAsia based device support"
75 depends on HID_FF 75 depends on HID_FF
76 select INPUT_FF_MEMLESS if USB_HID 76 select INPUT_FF_MEMLESS if USB_HID
77 help 77 help
78 Say Y here if you have a PantherLord USB/PS2 2in1 Adapter and want 78 Say Y here if you have a PantherLord/GreenAsia based game controller
79 to enable force feedback support for it. 79 or adapter and want to enable force feedback support for it.
80 80
81config THRUSTMASTER_FF 81config THRUSTMASTER_FF
82 bool "ThrustMaster devices support (EXPERIMENTAL)" 82 bool "ThrustMaster devices support (EXPERIMENTAL)"
diff --git a/drivers/hid/usbhid/hid-ff.c b/drivers/hid/usbhid/hid-ff.c
index 5dacd8ec8072..22329feb3b5a 100644
--- a/drivers/hid/usbhid/hid-ff.c
+++ b/drivers/hid/usbhid/hid-ff.c
@@ -62,7 +62,8 @@ static struct hid_ff_initializer inits[] = {
62 { 0x46d, 0xca03, hid_lgff_init }, /* Logitech MOMO force wheel */ 62 { 0x46d, 0xca03, hid_lgff_init }, /* Logitech MOMO force wheel */
63#endif 63#endif
64#ifdef CONFIG_PANTHERLORD_FF 64#ifdef CONFIG_PANTHERLORD_FF
65 { 0x810, 0x0001, hid_plff_init }, 65 { 0x810, 0x0001, hid_plff_init }, /* "Twin USB Joystick" */
66 { 0xe8f, 0x0003, hid_plff_init }, /* "GreenAsia Inc. USB Joystick " */
66#endif 67#endif
67#ifdef CONFIG_THRUSTMASTER_FF 68#ifdef CONFIG_THRUSTMASTER_FF
68 { 0x44f, 0xb300, hid_tmff_init }, 69 { 0x44f, 0xb300, hid_tmff_init },
diff --git a/drivers/hid/usbhid/hid-plff.c b/drivers/hid/usbhid/hid-plff.c
index d6a8f2b49bd2..9eb83cf9d22b 100644
--- a/drivers/hid/usbhid/hid-plff.c
+++ b/drivers/hid/usbhid/hid-plff.c
@@ -1,5 +1,15 @@
1/* 1/*
2 * Force feedback support for PantherLord USB/PS2 2in1 Adapter devices 2 * Force feedback support for PantherLord/GreenAsia based devices
3 *
4 * The devices are distributed under various names and the same USB device ID
5 * can be used in both adapters and actual game controllers.
6 *
7 * 0810:0001 "Twin USB Joystick"
8 * - tested with PantherLord USB/PS2 2in1 Adapter
9 * - contains two reports, one for each port (HID_QUIRK_MULTI_INPUT)
10 *
11 * 0e8f:0003 "GreenAsia Inc. USB Joystick "
12 * - tested with Köng Gaming gamepad
3 * 13 *
4 * Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com> 14 * Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com>
5 */ 15 */
@@ -67,11 +77,11 @@ int hid_plff_init(struct hid_device *hid)
67 struct input_dev *dev; 77 struct input_dev *dev;
68 int error; 78 int error;
69 79
70 /* The device contains 2 output reports (one for each 80 /* The device contains one output report per physical device, all
71 HID_QUIRK_MULTI_INPUT device), both containing 1 field, which 81 containing 1 field, which contains 4 ff00.0002 usages and 4 16bit
72 contains 4 ff00.0002 usages and 4 16bit absolute values. 82 absolute values.
73 83
74 The 2 input reports also contain a field which contains 84 The input reports also contain a field which contains
75 8 ff00.0001 usages and 8 boolean values. Their meaning is 85 8 ff00.0001 usages and 8 boolean values. Their meaning is
76 currently unknown. */ 86 currently unknown. */
77 87
@@ -122,8 +132,8 @@ int hid_plff_init(struct hid_device *hid)
122 usbhid_submit_report(hid, plff->report, USB_DIR_OUT); 132 usbhid_submit_report(hid, plff->report, USB_DIR_OUT);
123 } 133 }
124 134
125 printk(KERN_INFO "hid-plff: Force feedback for PantherLord USB/PS2 " 135 printk(KERN_INFO "hid-plff: Force feedback for PantherLord/GreenAsia "
126 "2in1 Adapters by Anssi Hannula <anssi.hannula@gmail.com>\n"); 136 "devices by Anssi Hannula <anssi.hannula@gmail.com>\n");
127 137
128 return 0; 138 return 0;
129} 139}