HID: support primax keyboards violating USB HID spec
[pandora-kernel.git] / drivers / hid / Kconfig
1 #
2 # HID driver configuration
3 #
4 menuconfig HID_SUPPORT
5         bool "HID Devices"
6         depends on INPUT
7         default y
8         ---help---
9           Say Y here to get to see options for various computer-human interface
10           device drivers. This option alone does not add any kernel code.
11
12           If you say N, all options in this submenu will be skipped and disabled.
13
14 if HID_SUPPORT
15
16 config HID
17         tristate "Generic HID support"
18         depends on INPUT
19         default y
20         ---help---
21           A human interface device (HID) is a type of computer device that
22           interacts directly with and takes input from humans. The term "HID"
23           most commonly used to refer to the USB-HID specification, but other
24           devices (such as, but not strictly limited to, Bluetooth) are
25           designed using HID specification (this involves certain keyboards,
26           mice, tablets, etc). This option compiles into kernel the generic
27           HID layer code (parser, usages, etc.), which can then be used by
28           transport-specific HID implementation (like USB or Bluetooth).
29
30           For docs and specs, see http://www.usb.org/developers/hidpage/
31
32           If unsure, say Y.
33
34 config HIDRAW
35         bool "/dev/hidraw raw HID device support"
36         depends on HID
37         ---help---
38         Say Y here if you want to support HID devices (from the USB
39         specification standpoint) that aren't strictly user interface
40         devices, like monitor controls and Uninterruptable Power Supplies.
41
42         This module supports these devices separately using a separate
43         event interface on /dev/hidraw.
44
45         There is also a /dev/hiddev configuration option in the USB HID
46         configuration menu. In comparison to hiddev, this device does not process
47         the hid events at all (no parsing, no lookups). This lets applications
48         to work on raw hid events when they want to, and avoid using transport-specific
49         userspace libhid/libusb libraries.
50
51         If unsure, say Y.
52
53 source "drivers/hid/usbhid/Kconfig"
54
55 menu "Special HID drivers"
56         depends on HID
57
58 config HID_A4TECH
59         tristate "A4 tech mice" if EXPERT
60         depends on USB_HID
61         default !EXPERT
62         ---help---
63         Support for A4 tech X5 and WOP-35 / Trust 450L mice.
64
65 config HID_ACRUX
66         tristate "ACRUX game controller support"
67         depends on USB_HID
68         ---help---
69         Say Y here if you want to enable support for ACRUX game controllers.
70
71 config HID_ACRUX_FF
72         tristate "ACRUX force feedback support"
73         depends on HID_ACRUX
74         select INPUT_FF_MEMLESS
75         ---help---
76         Say Y here if you want to enable force feedback support for ACRUX
77         game controllers.
78
79 config HID_APPLE
80         tristate "Apple {i,Power,Mac}Books" if EXPERT
81         depends on (USB_HID || BT_HIDP)
82         default !EXPERT
83         ---help---
84         Support for some Apple devices which less or more break
85         HID specification.
86
87         Say Y here if you want support for keyboards of Apple iBooks, PowerBooks,
88         MacBooks, MacBook Pros and Apple Aluminum.
89
90 config HID_BELKIN
91         tristate "Belkin Flip KVM and Wireless keyboard" if EXPERT
92         depends on USB_HID
93         default !EXPERT
94         ---help---
95         Support for Belkin Flip KVM and Wireless keyboard.
96
97 config HID_CHERRY
98         tristate "Cherry Cymotion keyboard" if EXPERT
99         depends on USB_HID
100         default !EXPERT
101         ---help---
102         Support for Cherry Cymotion keyboard.
103
104 config HID_CHICONY
105         tristate "Chicony Tactical pad" if EXPERT
106         depends on USB_HID
107         default !EXPERT
108         ---help---
109         Support for Chicony Tactical pad.
110
111 config HID_PRODIKEYS
112         tristate "Prodikeys PC-MIDI Keyboard support"
113         depends on USB_HID && SND
114         select SND_RAWMIDI
115         ---help---
116         Support for Prodikeys PC-MIDI Keyboard device support.
117         Say Y here to enable support for this device.
118         - Prodikeys PC-MIDI keyboard.
119           The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI
120           input and one MIDI output. These MIDI jacks appear as
121           a sound "card" in the ALSA sound system.
122           Note: if you say N here, this device will still function as a basic
123           multimedia keyboard, but will lack support for the musical keyboard
124           and some additional multimedia keys.
125
126 config HID_CYPRESS
127         tristate "Cypress mouse and barcode readers" if EXPERT
128         depends on USB_HID
129         default !EXPERT
130         ---help---
131         Support for cypress mouse and barcode readers.
132
133 config HID_DRAGONRISE
134         tristate "DragonRise Inc. game controller"
135         depends on USB_HID
136         ---help---
137         Say Y here if you have DragonRise Inc. game controllers.
138         These might be branded as:
139         - Tesun USB-703
140         - Media-tech MT1504 "Rogue"
141         - DVTech JS19 "Gear"
142         - Defender Game Master
143
144 config DRAGONRISE_FF
145         bool "DragonRise Inc. force feedback"
146         depends on HID_DRAGONRISE
147         select INPUT_FF_MEMLESS
148         ---help---
149         Say Y here if you want to enable force feedback support for DragonRise Inc.
150         game controllers.
151
152 config HID_EMS_FF
153         tristate "EMS Production Inc. force feedback support"
154         depends on USB_HID
155         select INPUT_FF_MEMLESS
156         ---help---
157         Say Y here if you want to enable force feedback support for devices by
158         EMS Production Ltd.
159         Currently the following devices are known to be supported:
160          - Trio Linker Plus II
161
162 config HID_ELECOM
163         tristate "ELECOM BM084 bluetooth mouse"
164         depends on BT_HIDP
165         ---help---
166         Support for the ELECOM BM084 (bluetooth mouse).
167
168 config HID_EZKEY
169         tristate "Ezkey BTC 8193 keyboard" if EXPERT
170         depends on USB_HID
171         default !EXPERT
172         ---help---
173         Support for Ezkey BTC 8193 keyboard.
174
175 config HID_HOLTEK
176         tristate "Holtek On Line Grip based game controller support"
177         depends on USB_HID
178         ---help---
179           Say Y here if you have a Holtek On Line Grip based game controller.
180
181 config HOLTEK_FF
182         bool "Holtek On Line Grip force feedback support"
183         depends on HID_HOLTEK
184         select INPUT_FF_MEMLESS
185         ---help---
186           Say Y here if you have a Holtek On Line Grip based game controller
187           and want to have force feedback support for it.
188
189 config HID_KEYTOUCH
190         tristate "Keytouch HID devices"
191         depends on USB_HID
192         ---help---
193         Support for Keytouch HID devices not fully compliant with
194         the specification. Currently supported:
195                 - Keytouch IEC 60945
196
197 config HID_KYE
198         tristate "Kye/Genius Ergo Mouse" if EXPERT
199         depends on USB_HID
200         default !EXPERT
201         ---help---
202         Support for Kye/Genius Ergo Mouse.
203
204 config HID_UCLOGIC
205         tristate "UC-Logic"
206         depends on USB_HID
207         ---help---
208         Support for UC-Logic tablets.
209
210 config HID_WALTOP
211         tristate "Waltop"
212         depends on USB_HID
213         ---help---
214         Support for Waltop tablets.
215
216 config HID_GYRATION
217         tristate "Gyration remote control"
218         depends on USB_HID
219         ---help---
220         Support for Gyration remote control.
221
222 config HID_TWINHAN
223         tristate "Twinhan IR remote control"
224         depends on USB_HID
225         ---help---
226         Support for Twinhan IR remote control.
227
228 config HID_KENSINGTON
229         tristate "Kensington Slimblade Trackball" if EXPERT
230         depends on USB_HID
231         default !EXPERT
232         ---help---
233         Support for Kensington Slimblade Trackball.
234
235 config HID_LCPOWER
236         tristate "LC-Power"
237         depends on USB_HID
238         ---help---
239         Support for LC-Power RC1000MCE RF remote control.
240
241 config HID_LOGITECH
242         tristate "Logitech devices" if EXPERT
243         depends on USB_HID
244         default !EXPERT
245         ---help---
246         Support for Logitech devices that are not fully compliant with HID standard.
247
248 config LOGITECH_FF
249         bool "Logitech force feedback support"
250         depends on HID_LOGITECH
251         select INPUT_FF_MEMLESS
252         help
253           Say Y here if you have one of these devices:
254           - Logitech WingMan Cordless RumblePad
255           - Logitech WingMan Cordless RumblePad 2
256           - Logitech WingMan Force 3D
257           - Logitech Formula Force EX
258           - Logitech WingMan Formula Force GP
259           - Logitech MOMO Force wheel
260
261           and if you want to enable force feedback for them.
262           Note: if you say N here, this device will still be supported, but without
263           force feedback.
264
265 config LOGIRUMBLEPAD2_FF
266         bool "Logitech RumblePad/Rumblepad 2 force feedback support"
267         depends on HID_LOGITECH
268         select INPUT_FF_MEMLESS
269         help
270           Say Y here if you want to enable force feedback support for Logitech
271           RumblePad and Rumblepad 2 devices.
272
273 config LOGIG940_FF
274         bool "Logitech Flight System G940 force feedback support"
275         depends on HID_LOGITECH
276         select INPUT_FF_MEMLESS
277         help
278           Say Y here if you want to enable force feedback support for Logitech
279           Flight System G940 devices.
280
281 config LOGIWII_FF
282         bool "Logitech Speed Force Wireless force feedback support"
283         depends on HID_LOGITECH
284         select INPUT_FF_MEMLESS
285         help
286           Say Y here if you want to enable force feedback support for Logitech
287           Speed Force Wireless (Wii) devices.
288
289 config HID_MAGICMOUSE
290         tristate "Apple MagicMouse multi-touch support"
291         depends on BT_HIDP
292         ---help---
293         Support for the Apple Magic Mouse multi-touch.
294
295         Say Y here if you want support for the multi-touch features of the
296         Apple Wireless "Magic" Mouse.
297
298 config HID_MICROSOFT
299         tristate "Microsoft non-fully HID-compliant devices" if EXPERT
300         depends on USB_HID
301         default !EXPERT
302         ---help---
303         Support for Microsoft devices that are not fully compliant with HID standard.
304
305 config HID_MONTEREY
306         tristate "Monterey Genius KB29E keyboard" if EXPERT
307         depends on USB_HID
308         default !EXPERT
309         ---help---
310         Support for Monterey Genius KB29E.
311
312 config HID_MULTITOUCH
313         tristate "HID Multitouch panels"
314         depends on USB_HID
315         ---help---
316           Generic support for HID multitouch panels.
317
318           Say Y here if you have one of the following devices:
319           - 3M PCT touch screens
320           - ActionStar dual touch panels
321           - Cando dual touch panels
322           - Chunghwa panels
323           - CVTouch panels
324           - Cypress TrueTouch panels
325           - Elo TouchSystems IntelliTouch Plus panels
326           - GeneralTouch 'Sensing Win7-TwoFinger' panels
327           - GoodTouch panels
328           - Hanvon dual touch panels
329           - Ilitek dual touch panels
330           - IrTouch Infrared USB panels
331           - Lumio CrystalTouch panels
332           - MosArt dual-touch panels
333           - PenMount dual touch panels
334           - Pixcir dual touch panels
335           - eGalax dual-touch panels, including the Joojoo and Wetab tablets
336           - Stantum multitouch panels
337           - Touch International Panels
338           - Unitec Panels
339           - XAT optical touch panels
340
341           If unsure, say N.
342
343           To compile this driver as a module, choose M here: the
344           module will be called hid-multitouch.
345
346 config HID_NTRIG
347         tristate "N-Trig touch screen"
348         depends on USB_HID
349         ---help---
350         Support for N-Trig touch screen.
351
352 config HID_ORTEK
353         tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad"
354         depends on USB_HID
355         ---help---
356         There are certain devices which have LogicalMaximum wrong in the keyboard
357         usage page of their report descriptor. The most prevailing ones so far
358         are manufactured by Ortek, thus the name of the driver. Currently
359         supported devices by this driver are
360
361            - Ortek PKB-1700
362            - Ortek WKB-2000
363            - Skycable wireless presenter
364
365 config HID_PANTHERLORD
366         tristate "Pantherlord/GreenAsia game controller"
367         depends on USB_HID
368         ---help---
369           Say Y here if you have a PantherLord/GreenAsia based game controller
370           or adapter.
371
372 config PANTHERLORD_FF
373         bool "Pantherlord force feedback support"
374         depends on HID_PANTHERLORD
375         select INPUT_FF_MEMLESS
376         ---help---
377           Say Y here if you have a PantherLord/GreenAsia based game controller
378           or adapter and want to enable force feedback support for it.
379
380 config HID_PETALYNX
381         tristate "Petalynx Maxter remote control"
382         depends on USB_HID
383         ---help---
384         Support for Petalynx Maxter remote control.
385
386 config HID_PICOLCD
387         tristate "PicoLCD (graphic version)"
388         depends on USB_HID
389         ---help---
390           This provides support for Minibox PicoLCD devices, currently
391           only the graphical ones are supported.
392
393           This includes support for the following device features:
394           - Keypad
395           - Switching between Firmware and Flash mode
396           - EEProm / Flash access     (via debugfs)
397           Features selectively enabled:
398           - Framebuffer for monochrome 256x64 display
399           - Backlight control
400           - Contrast control
401           - General purpose outputs
402           Features that are not (yet) supported:
403           - IR
404
405 config HID_PICOLCD_FB
406         bool "Framebuffer support" if EXPERT
407         default !EXPERT
408         depends on HID_PICOLCD
409         depends on HID_PICOLCD=FB || FB=y
410         select FB_DEFERRED_IO
411         select FB_SYS_FILLRECT
412         select FB_SYS_COPYAREA
413         select FB_SYS_IMAGEBLIT
414         select FB_SYS_FOPS
415         ---help---
416           Provide access to PicoLCD's 256x64 monochrome display via a
417           frambuffer device.
418
419 config HID_PICOLCD_BACKLIGHT
420         bool "Backlight control" if EXPERT
421         default !EXPERT
422         depends on HID_PICOLCD
423         depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y
424         ---help---
425           Provide access to PicoLCD's backlight control via backlight
426           class.
427
428 config HID_PICOLCD_LCD
429         bool "Contrast control" if EXPERT
430         default !EXPERT
431         depends on HID_PICOLCD
432         depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y
433         ---help---
434           Provide access to PicoLCD's LCD contrast via lcd class.
435
436 config HID_PICOLCD_LEDS
437         bool "GPO via leds class" if EXPERT
438         default !EXPERT
439         depends on HID_PICOLCD
440         depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y
441         ---help---
442           Provide access to PicoLCD's GPO pins via leds class.
443
444 config HID_PRIMAX
445         tristate "Primax non-fully HID-compliant devices" if EXPERT
446         depends on USB_HID
447         default !EXPERT
448         ---help---
449         Support for Primax devices that are not fully compliant with the
450         HID standard.
451
452 config HID_QUANTA
453         tristate "Quanta Optical Touch panels"
454         depends on USB_HID
455         ---help---
456         Support for Quanta Optical Touch dual-touch panels.
457
458 config HID_ROCCAT
459         tristate "Roccat special event support"
460         depends on USB_HID
461         select HID_ROCCAT_COMMON
462         ---help---
463         Support for Roccat special events.
464         Say Y here if you have a Roccat mouse or keyboard and want OSD or
465         macro execution support.
466
467 config HID_ROCCAT_COMMON
468         tristate
469         depends on HID_ROCCAT
470
471 config HID_ROCCAT_ARVO
472         tristate "Roccat Arvo keyboard support"
473         depends on USB_HID
474         depends on HID_ROCCAT
475         ---help---
476         Support for Roccat Arvo keyboard.
477
478 config HID_ROCCAT_KONE
479         tristate "Roccat Kone Mouse support"
480         depends on USB_HID
481         depends on HID_ROCCAT
482         ---help---
483         Support for Roccat Kone mouse.
484
485 config HID_ROCCAT_KONEPLUS
486         tristate "Roccat Kone[+] mouse support"
487         depends on USB_HID
488         depends on HID_ROCCAT
489         ---help---
490         Support for Roccat Kone[+] mouse.
491
492 config HID_ROCCAT_KOVAPLUS
493         tristate "Roccat Kova[+] mouse support"
494         depends on USB_HID
495         depends on HID_ROCCAT
496         ---help---
497         Support for Roccat Kova[+] mouse.
498
499 config HID_ROCCAT_PYRA
500         tristate "Roccat Pyra mouse support"
501         depends on USB_HID
502         depends on HID_ROCCAT
503         ---help---
504         Support for Roccat Pyra mouse.
505
506 config HID_SAMSUNG
507         tristate "Samsung InfraRed remote control or keyboards"
508         depends on USB_HID
509         ---help---
510         Support for Samsung InfraRed remote control or keyboards.
511
512 config HID_SONY
513         tristate "Sony PS3 controller"
514         depends on USB_HID
515         ---help---
516         Support for Sony PS3 controller.
517
518 config HID_SPEEDLINK
519         tristate "Speedlink VAD Cezanne mouse support"
520         depends on USB_HID
521         ---help---
522         Support for Speedlink Vicious and Divine Cezanne mouse.
523
524 config HID_SUNPLUS
525         tristate "Sunplus wireless desktop"
526         depends on USB_HID
527         ---help---
528         Support for Sunplus wireless desktop.
529
530 config HID_GREENASIA
531         tristate "GreenAsia (Product ID 0x12) game controller support"
532         depends on USB_HID
533         ---help---
534           Say Y here if you have a GreenAsia (Product ID 0x12) based game
535           controller or adapter.
536
537 config GREENASIA_FF
538         bool "GreenAsia (Product ID 0x12) force feedback support"
539         depends on HID_GREENASIA
540         select INPUT_FF_MEMLESS
541         ---help---
542         Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
543         (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
544         and want to enable force feedback support for it.
545
546 config HID_SMARTJOYPLUS
547         tristate "SmartJoy PLUS PS2/USB adapter support"
548         depends on USB_HID
549         ---help---
550         Support for SmartJoy PLUS PS2/USB adapter.
551
552 config SMARTJOYPLUS_FF
553         bool "SmartJoy PLUS PS2/USB adapter force feedback support"
554         depends on HID_SMARTJOYPLUS
555         select INPUT_FF_MEMLESS
556         ---help---
557         Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
558         enable force feedback support for it.
559
560 config HID_TOPSEED
561         tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
562         depends on USB_HID
563         ---help---
564         Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
565         CLLRCMCE remote control.
566
567 config HID_THRUSTMASTER
568         tristate "ThrustMaster devices support"
569         depends on USB_HID
570         ---help---
571           Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
572           a THRUSTMASTER Ferrari GT Rumble Wheel.
573
574 config THRUSTMASTER_FF
575         bool "ThrustMaster devices force feedback support"
576         depends on HID_THRUSTMASTER
577         select INPUT_FF_MEMLESS
578         ---help---
579           Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
580           a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
581           Rumble Force or Force Feedback Wheel.
582
583 config HID_WACOM
584         tristate "Wacom Bluetooth devices support"
585         depends on BT_HIDP
586         ---help---
587         Support for Wacom Graphire Bluetooth tablet.
588
589 config HID_WACOM_POWER_SUPPLY
590         bool "Wacom Bluetooth devices power supply status support"
591         depends on HID_WACOM
592         select POWER_SUPPLY
593         ---help---
594           Say Y here if you want to enable power supply status monitoring for
595           Wacom Bluetooth devices.
596
597 config HID_WIIMOTE
598         tristate "Nintendo Wii Remote support"
599         depends on BT_HIDP
600         ---help---
601         Support for the Nintendo Wii Remote bluetooth device.
602
603 config HID_ZEROPLUS
604         tristate "Zeroplus based game controller support"
605         depends on USB_HID
606         ---help---
607           Say Y here if you have a Zeroplus based game controller.
608
609 config ZEROPLUS_FF
610         bool "Zeroplus based game controller force feedback support"
611         depends on HID_ZEROPLUS
612         select INPUT_FF_MEMLESS
613         ---help---
614           Say Y here if you have a Zeroplus based game controller and want
615           to have force feedback support for it.
616
617 config HID_ZYDACRON
618         tristate "Zydacron remote control support"
619         depends on USB_HID
620         ---help---
621         Support for Zydacron remote control.
622
623 endmenu
624
625 endif # HID_SUPPORT