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 | { |
