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