diff options
-rw-r--r-- | drivers/hid/Kconfig | 70 | ||||
-rw-r--r-- | drivers/hid/Makefile | 8 | ||||
-rw-r--r-- | drivers/hid/hid-drff.c | 8 | ||||
-rw-r--r-- | drivers/hid/hid-gaff.c | 8 | ||||
-rw-r--r-- | drivers/hid/hid-tmff.c | 17 | ||||
-rw-r--r-- | drivers/hid/hid-zpff.c | 7 |
6 files changed, 94 insertions, 24 deletions
diff --git a/drivers/hid/Kconfig b/drivers/hid/Kconfig index 4cdf846da62c..7831a0318d3c 100644 --- a/drivers/hid/Kconfig +++ b/drivers/hid/Kconfig | |||
@@ -116,9 +116,16 @@ config HID_CYPRESS | |||
116 | ---help--- | 116 | ---help--- |
117 | Support for cypress mouse and barcode readers. | 117 | Support for cypress mouse and barcode readers. |
118 | 118 | ||
119 | config DRAGONRISE_FF | 119 | config HID_DRAGONRISE |
120 | tristate "DragonRise Inc. force feedback support" | 120 | tristate "DragonRise Inc. support" if EMBEDDED |
121 | depends on USB_HID | 121 | depends on USB_HID |
122 | default !EMBEDDED | ||
123 | ---help--- | ||
124 | Say Y here if you have DragonRise Inc.game controllers. | ||
125 | |||
126 | config DRAGONRISE_FF | ||
127 | bool "DragonRise Inc. force feedback support" | ||
128 | depends on HID_DRAGONRISE | ||
122 | select INPUT_FF_MEMLESS | 129 | select INPUT_FF_MEMLESS |
123 | ---help--- | 130 | ---help--- |
124 | Say Y here if you want to enable force feedback support for DragonRise Inc. | 131 | Say Y here if you want to enable force feedback support for DragonRise Inc. |
@@ -160,7 +167,7 @@ config HID_LOGITECH | |||
160 | Support for Logitech devices that are not fully compliant with HID standard. | 167 | Support for Logitech devices that are not fully compliant with HID standard. |
161 | 168 | ||
162 | config LOGITECH_FF | 169 | config LOGITECH_FF |
163 | bool "Logitech force feedback" | 170 | bool "Logitech force feedback support" |
164 | depends on HID_LOGITECH | 171 | depends on HID_LOGITECH |
165 | select INPUT_FF_MEMLESS | 172 | select INPUT_FF_MEMLESS |
166 | help | 173 | help |
@@ -176,7 +183,7 @@ config LOGITECH_FF | |||
176 | force feedback. | 183 | force feedback. |
177 | 184 | ||
178 | config LOGIRUMBLEPAD2_FF | 185 | config LOGIRUMBLEPAD2_FF |
179 | bool "Logitech Rumblepad 2 force feedback" | 186 | bool "Logitech Rumblepad 2 force feedback support" |
180 | depends on HID_LOGITECH | 187 | depends on HID_LOGITECH |
181 | select INPUT_FF_MEMLESS | 188 | select INPUT_FF_MEMLESS |
182 | help | 189 | help |
@@ -211,11 +218,19 @@ config HID_PANTHERLORD | |||
211 | ---help--- | 218 | ---help--- |
212 | Support for PantherLord/GreenAsia based device support. | 219 | Support for PantherLord/GreenAsia based device support. |
213 | 220 | ||
221 | config HID_PANTHERLORD | ||
222 | tristate "Pantherlord support" if EMBEDDED | ||
223 | depends on USB_HID | ||
224 | default !EMBEDDED | ||
225 | ---help--- | ||
226 | Say Y here if you have a PantherLord/GreenAsia based game controller | ||
227 | or adapter. | ||
228 | |||
214 | config PANTHERLORD_FF | 229 | config PANTHERLORD_FF |
215 | bool "Pantherlord force feedback support" | 230 | bool "Pantherlord force feedback support" |
216 | depends on HID_PANTHERLORD | 231 | depends on HID_PANTHERLORD |
217 | select INPUT_FF_MEMLESS | 232 | select INPUT_FF_MEMLESS |
218 | help | 233 | ---help--- |
219 | Say Y here if you have a PantherLord/GreenAsia based game controller | 234 | Say Y here if you have a PantherLord/GreenAsia based game controller |
220 | or adapter and want to enable force feedback support for it. | 235 | or adapter and want to enable force feedback support for it. |
221 | 236 | ||
@@ -247,9 +262,17 @@ config HID_SUNPLUS | |||
247 | ---help--- | 262 | ---help--- |
248 | Support for Sunplus wireless desktop. | 263 | Support for Sunplus wireless desktop. |
249 | 264 | ||
250 | config GREENASIA_FF | 265 | config HID_GREENASIA |
251 | tristate "GreenAsia (Product ID 0x12) force feedback support" | 266 | tristate "GreenAsia (Product ID 0x12) support" if EMBEDDED |
252 | depends on USB_HID | 267 | depends on USB_HID |
268 | default !EMBEDDED | ||
269 | ---help--- | ||
270 | Say Y here if you have a GreenAsia (Product ID 0x12) based game | ||
271 | controller or adapter. | ||
272 | |||
273 | config GREENASIA_FF | ||
274 | bool "GreenAsia (Product ID 0x12) force feedback support" | ||
275 | depends on HID_GREENASIA | ||
253 | select INPUT_FF_MEMLESS | 276 | select INPUT_FF_MEMLESS |
254 | ---help--- | 277 | ---help--- |
255 | Say Y here if you have a GreenAsia (Product ID 0x12) based game controller | 278 | Say Y here if you have a GreenAsia (Product ID 0x12) based game controller |
@@ -278,13 +301,22 @@ config HID_TOPSEED | |||
278 | ---help--- | 301 | ---help--- |
279 | Say Y if you have a TopSeed Cyberlink remote control. | 302 | Say Y if you have a TopSeed Cyberlink remote control. |
280 | 303 | ||
281 | config THRUSTMASTER_FF | 304 | config HID_THRUSTMASTER |
282 | tristate "ThrustMaster devices support" | 305 | tristate "ThrustMaster devices support" if EMBEDDED |
283 | depends on USB_HID | 306 | depends on USB_HID |
307 | default !EMBEDDED | ||
308 | ---help--- | ||
309 | Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or | ||
310 | a THRUSTMASTER Ferrari GT Rumble Wheel. | ||
311 | |||
312 | config THRUSTMASTER_FF | ||
313 | bool "ThrustMaster devices force feedback support" | ||
314 | depends on HID_THRUSTMASTER | ||
284 | select INPUT_FF_MEMLESS | 315 | select INPUT_FF_MEMLESS |
285 | help | 316 | ---help--- |
286 | Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or | 317 | Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or |
287 | a THRUSTMASTER Ferrari GT Rumble Force or Force Feedback Wheel. | 318 | a THRUSTMASTER Ferrari GT Rumble Force or Force Feedback Wheel and |
319 | want to enable force feedback support for it. | ||
288 | 320 | ||
289 | config HID_WACOM | 321 | config HID_WACOM |
290 | tristate "Wacom Bluetooth devices support" if EMBEDDED | 322 | tristate "Wacom Bluetooth devices support" if EMBEDDED |
@@ -293,13 +325,21 @@ config HID_WACOM | |||
293 | ---help--- | 325 | ---help--- |
294 | Support for Wacom Graphire Bluetooth tablet. | 326 | Support for Wacom Graphire Bluetooth tablet. |
295 | 327 | ||
296 | config ZEROPLUS_FF | 328 | config HID_ZEROPLUS |
297 | tristate "Zeroplus based game controller support" | 329 | tristate "Zeroplus based game controller support" if EMBEDDED |
298 | depends on USB_HID | 330 | depends on USB_HID |
299 | select INPUT_FF_MEMLESS | 331 | default !EMBEDDED |
300 | help | 332 | ---help--- |
301 | Say Y here if you have a Zeroplus based game controller. | 333 | Say Y here if you have a Zeroplus based game controller. |
302 | 334 | ||
335 | config ZEROPLUS_FF | ||
336 | bool "Zeroplus based game controller force feedback support" | ||
337 | depends on HID_ZEROPLUS | ||
338 | select INPUT_FF_MEMLESS | ||
339 | ---help--- | ||
340 | Say Y here if you have a Zeroplus based game controller and want | ||
341 | to have force feedback support for it. | ||
342 | |||
303 | endmenu | 343 | endmenu |
304 | 344 | ||
305 | endif # HID_SUPPORT | 345 | endif # HID_SUPPORT |
diff --git a/drivers/hid/Makefile b/drivers/hid/Makefile index eddd5b633b63..db35151673b1 100644 --- a/drivers/hid/Makefile +++ b/drivers/hid/Makefile | |||
@@ -22,7 +22,7 @@ obj-$(CONFIG_HID_BELKIN) += hid-belkin.o | |||
22 | obj-$(CONFIG_HID_CHERRY) += hid-cherry.o | 22 | obj-$(CONFIG_HID_CHERRY) += hid-cherry.o |
23 | obj-$(CONFIG_HID_CHICONY) += hid-chicony.o | 23 | obj-$(CONFIG_HID_CHICONY) += hid-chicony.o |
24 | obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o | 24 | obj-$(CONFIG_HID_CYPRESS) += hid-cypress.o |
25 | obj-$(CONFIG_DRAGONRISE_FF) += hid-drff.o | 25 | obj-$(CONFIG_HID_DRAGONRISE) += hid-drff.o |
26 | obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o | 26 | obj-$(CONFIG_HID_EZKEY) += hid-ezkey.o |
27 | obj-$(CONFIG_HID_GYRATION) += hid-gyration.o | 27 | obj-$(CONFIG_HID_GYRATION) += hid-gyration.o |
28 | obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o | 28 | obj-$(CONFIG_HID_KENSINGTON) += hid-kensington.o |
@@ -37,10 +37,10 @@ obj-$(CONFIG_HID_SAMSUNG) += hid-samsung.o | |||
37 | obj-$(CONFIG_HID_SMARTJOYPLUS) += hid-sjoy.o | 37 | obj-$(CONFIG_HID_SMARTJOYPLUS) += hid-sjoy.o |
38 | obj-$(CONFIG_HID_SONY) += hid-sony.o | 38 | obj-$(CONFIG_HID_SONY) += hid-sony.o |
39 | obj-$(CONFIG_HID_SUNPLUS) += hid-sunplus.o | 39 | obj-$(CONFIG_HID_SUNPLUS) += hid-sunplus.o |
40 | obj-$(CONFIG_GREENASIA_FF) += hid-gaff.o | 40 | obj-$(CONFIG_HID_GREENASIA) += hid-gaff.o |
41 | obj-$(CONFIG_THRUSTMASTER_FF) += hid-tmff.o | 41 | obj-$(CONFIG_HID_THRUSTMASTER) += hid-tmff.o |
42 | obj-$(CONFIG_HID_TOPSEED) += hid-topseed.o | 42 | obj-$(CONFIG_HID_TOPSEED) += hid-topseed.o |
43 | obj-$(CONFIG_ZEROPLUS_FF) += hid-zpff.o | 43 | obj-$(CONFIG_HID_ZEROPLUS) += hid-zpff.o |
44 | obj-$(CONFIG_HID_WACOM) += hid-wacom.o | 44 | obj-$(CONFIG_HID_WACOM) += hid-wacom.o |
45 | 45 | ||
46 | obj-$(CONFIG_USB_HID) += usbhid/ | 46 | obj-$(CONFIG_USB_HID) += usbhid/ |
diff --git a/drivers/hid/hid-drff.c b/drivers/hid/hid-drff.c index 34f3eb65100b..a239d20ad7a5 100644 --- a/drivers/hid/hid-drff.c +++ b/drivers/hid/hid-drff.c | |||
@@ -32,6 +32,8 @@ | |||
32 | #include <linux/hid.h> | 32 | #include <linux/hid.h> |
33 | 33 | ||
34 | #include "hid-ids.h" | 34 | #include "hid-ids.h" |
35 | |||
36 | #ifdef CONFIG_DRAGONRISE_FF | ||
35 | #include "usbhid/usbhid.h" | 37 | #include "usbhid/usbhid.h" |
36 | 38 | ||
37 | struct drff_device { | 39 | struct drff_device { |
@@ -135,6 +137,12 @@ static int drff_init(struct hid_device *hid) | |||
135 | 137 | ||
136 | return 0; | 138 | return 0; |
137 | } | 139 | } |
140 | #else | ||
141 | static inline int drff_init(struct hid_device *hid) | ||
142 | { | ||
143 | return 0; | ||
144 | } | ||
145 | #endif | ||
138 | 146 | ||
139 | static int dr_probe(struct hid_device *hdev, const struct hid_device_id *id) | 147 | static int dr_probe(struct hid_device *hdev, const struct hid_device_id *id) |
140 | { | 148 | { |
diff --git a/drivers/hid/hid-gaff.c b/drivers/hid/hid-gaff.c index 510ad3ab8d33..8a11ccddaf2e 100644 --- a/drivers/hid/hid-gaff.c +++ b/drivers/hid/hid-gaff.c | |||
@@ -31,6 +31,8 @@ | |||
31 | #include <linux/usb.h> | 31 | #include <linux/usb.h> |
32 | #include <linux/hid.h> | 32 | #include <linux/hid.h> |
33 | #include "hid-ids.h" | 33 | #include "hid-ids.h" |
34 | |||
35 | #ifdef CONFIG_GREENASIA_FF | ||
34 | #include "usbhid/usbhid.h" | 36 | #include "usbhid/usbhid.h" |
35 | 37 | ||
36 | struct gaff_device { | 38 | struct gaff_device { |
@@ -130,6 +132,12 @@ static int gaff_init(struct hid_device *hid) | |||
130 | 132 | ||
131 | return 0; | 133 | return 0; |
132 | } | 134 | } |
135 | #else | ||
136 | static inline int gaff_init(struct hid_device *hdev) | ||
137 | { | ||
138 | return 0; | ||
139 | } | ||
140 | #endif | ||
133 | 141 | ||
134 | static int ga_probe(struct hid_device *hdev, const struct hid_device_id *id) | 142 | static int ga_probe(struct hid_device *hdev, const struct hid_device_id *id) |
135 | { | 143 | { |
diff --git a/drivers/hid/hid-tmff.c b/drivers/hid/hid-tmff.c index 7c1f7b50330c..fcd6ccd02fee 100644 --- a/drivers/hid/hid-tmff.c +++ b/drivers/hid/hid-tmff.c | |||
@@ -33,11 +33,6 @@ | |||
33 | 33 | ||
34 | #include "hid-ids.h" | 34 | #include "hid-ids.h" |
35 | 35 | ||
36 | #include "usbhid/usbhid.h" | ||
37 | |||
38 | /* Usages for thrustmaster devices I know about */ | ||
39 | #define THRUSTMASTER_USAGE_FF (HID_UP_GENDESK | 0xbb) | ||
40 | |||
41 | static const signed short ff_rumble[] = { | 36 | static const signed short ff_rumble[] = { |
42 | FF_RUMBLE, | 37 | FF_RUMBLE, |
43 | -1 | 38 | -1 |
@@ -48,6 +43,12 @@ static const signed short ff_joystick[] = { | |||
48 | -1 | 43 | -1 |
49 | }; | 44 | }; |
50 | 45 | ||
46 | #ifdef CONFIG_THRUSTMASTER_FF | ||
47 | #include "usbhid/usbhid.h" | ||
48 | |||
49 | /* Usages for thrustmaster devices I know about */ | ||
50 | #define THRUSTMASTER_USAGE_FF (HID_UP_GENDESK | 0xbb) | ||
51 | |||
51 | struct tmff_device { | 52 | struct tmff_device { |
52 | struct hid_report *report; | 53 | struct hid_report *report; |
53 | struct hid_field *ff_field; | 54 | struct hid_field *ff_field; |
@@ -209,6 +210,12 @@ fail: | |||
209 | kfree(tmff); | 210 | kfree(tmff); |
210 | return error; | 211 | return error; |
211 | } | 212 | } |
213 | #else | ||
214 | static inline int tmff_init(struct hid_device *hid, const signed short *ff_bits) | ||
215 | { | ||
216 | return 0; | ||
217 | } | ||
218 | #endif | ||
212 | 219 | ||
213 | static int tm_probe(struct hid_device *hdev, const struct hid_device_id *id) | 220 | static int tm_probe(struct hid_device *hdev, const struct hid_device_id *id) |
214 | { | 221 | { |
diff --git a/drivers/hid/hid-zpff.c b/drivers/hid/hid-zpff.c index 85a198a18537..57f710757bf4 100644 --- a/drivers/hid/hid-zpff.c +++ b/drivers/hid/hid-zpff.c | |||
@@ -27,6 +27,7 @@ | |||
27 | 27 | ||
28 | #include "hid-ids.h" | 28 | #include "hid-ids.h" |
29 | 29 | ||
30 | #ifdef CONFIG_ZEROPLUS_FF | ||
30 | #include "usbhid/usbhid.h" | 31 | #include "usbhid/usbhid.h" |
31 | 32 | ||
32 | struct zpff_device { | 33 | struct zpff_device { |
@@ -108,6 +109,12 @@ static int zpff_init(struct hid_device *hid) | |||
108 | 109 | ||
109 | return 0; | 110 | return 0; |
110 | } | 111 | } |
112 | #else | ||
113 | static inline int zpff_init(struct hid_device *hid) | ||
114 | { | ||
115 | return 0; | ||
116 | } | ||
117 | #endif | ||
111 | 118 | ||
112 | static int zp_probe(struct hid_device *hdev, const struct hid_device_id *id) | 119 | static int zp_probe(struct hid_device *hdev, const struct hid_device_id *id) |
113 | { | 120 | { |