Merge tag 'for-5.2/dm-changes-v2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.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
31         select POWER_SUPPLY
32         default n
33         ---help---
34         This option adds support of reporting battery strength (for HID devices
35         that support this feature) through power_supply class so that userspace
36         tools, such as upower, can display it.
37
38 config HIDRAW
39         bool "/dev/hidraw raw HID device support"
40         depends on HID
41         ---help---
42         Say Y here if you want to support HID devices (from the USB
43         specification standpoint) that aren't strictly user interface
44         devices, like monitor controls and Uninterruptable Power Supplies.
45
46         This module supports these devices separately using a separate
47         event interface on /dev/hidraw.
48
49         There is also a /dev/hiddev configuration option in the USB HID
50         configuration menu. In comparison to hiddev, this device does not process
51         the hid events at all (no parsing, no lookups). This lets applications
52         to work on raw hid events when they want to, and avoid using transport-specific
53         userspace libhid/libusb libraries.
54
55         If unsure, say Y.
56
57 config UHID
58         tristate "User-space I/O driver support for HID subsystem"
59         depends on HID
60         default n
61         ---help---
62         Say Y here if you want to provide HID I/O Drivers from user-space.
63         This allows to write I/O drivers in user-space and feed the data from
64         the device into the kernel. The kernel parses the HID reports, loads the
65         corresponding HID Device Driver or provides input devices on top of your
66         user-space device.
67
68         This driver cannot be used to parse HID-reports in user-space and write
69         special HID-drivers. You should use hidraw for that.
70         Instead, this driver allows to write the transport-layer driver in
71         user-space like USB-HID and Bluetooth-HID do in kernel-space.
72
73         If unsure, say N.
74
75         To compile this driver as a module, choose M here: the
76         module will be called uhid.
77
78 config HID_GENERIC
79         tristate "Generic HID driver"
80         depends on HID
81         default HID
82         ---help---
83         Support for generic devices on the HID bus. This includes most
84         keyboards and mice, joysticks, tablets and digitizers.
85
86         To compile this driver as a module, choose M here: the module
87         will be called hid-generic.
88
89         If unsure, say Y.
90
91 menu "Special HID drivers"
92         depends on HID
93
94 config HID_A4TECH
95         tristate "A4 tech mice"
96         depends on HID
97         default !EXPERT
98         ---help---
99         Support for A4 tech X5 and WOP-35 / Trust 450L mice.
100
101 config HID_ACCUTOUCH
102         tristate "Accutouch touch device"
103         depends on USB_HID
104         ---help---
105           This selects a driver for the Accutouch 2216 touch controller.
106
107           The driver works around a problem in the reported device capabilities
108           which causes userspace to detect the device as a mouse rather than
109           a touchscreen.
110
111           Say Y here if you have a Accutouch 2216 touch controller.
112
113 config HID_ACRUX
114         tristate "ACRUX game controller support"
115         depends on HID
116         ---help---
117         Say Y here if you want to enable support for ACRUX game controllers.
118
119 config HID_ACRUX_FF
120         bool "ACRUX force feedback support"
121         depends on HID_ACRUX
122         select INPUT_FF_MEMLESS
123         ---help---
124         Say Y here if you want to enable force feedback support for ACRUX
125         game controllers.
126
127 config HID_APPLE
128         tristate "Apple {i,Power,Mac}Books"
129         depends on HID
130         default !EXPERT
131         ---help---
132         Support for some Apple devices which less or more break
133         HID specification.
134
135         Say Y here if you want support for keyboards of Apple iBooks, PowerBooks,
136         MacBooks, MacBook Pros and Apple Aluminum.
137
138 config HID_APPLEIR
139         tristate "Apple infrared receiver"
140         depends on (USB_HID)
141         ---help---
142         Support for Apple infrared remote control. All the Apple computers from
143           2005 onwards include such a port, except the unibody Macbook (2009),
144           and Mac Pros. This receiver is also used in the Apple TV set-top box
145           prior to the 2010 model.
146
147         Say Y here if you want support for Apple infrared remote control.
148
149 config HID_ASUS
150         tristate "Asus"
151         depends on LEDS_CLASS
152         depends on ASUS_WMI || ASUS_WMI=n
153         select POWER_SUPPLY
154         ---help---
155         Support for Asus notebook built-in keyboard and touchpad via i2c, and
156         the Asus Republic of Gamers laptop keyboard special keys.
157
158         Supported devices:
159         - EeeBook X205TA
160         - VivoBook E200HA
161         - GL553V series
162         - GL753V series
163
164 config HID_AUREAL
165         tristate "Aureal"
166         depends on HID
167         ---help---
168         Support for Aureal Cy se W-01RN Remote Controller and other Aureal derived remotes.
169
170 config HID_BELKIN
171         tristate "Belkin Flip KVM and Wireless keyboard"
172         depends on HID
173         default !EXPERT
174         ---help---
175         Support for Belkin Flip KVM and Wireless keyboard.
176
177 config HID_BETOP_FF
178         tristate "Betop Production Inc. force feedback support"
179         depends on USB_HID
180         select INPUT_FF_MEMLESS
181         ---help---
182         Say Y here if you want to enable force feedback support for devices by
183         BETOP Production Ltd.
184         Currently the following devices are known to be supported:
185          - BETOP 2185 PC & BFM MODE
186
187 config HID_BIGBEN_FF
188         tristate "BigBen Interactive Kids' gamepad support"
189         depends on USB_HID
190         depends on NEW_LEDS
191         depends on LEDS_CLASS
192         select INPUT_FF_MEMLESS
193         help
194           Support for the "Kid-friendly Wired Controller" PS3OFMINIPAD
195           gamepad made by BigBen Interactive, originally sold as a PS3
196           accessory. This driver fixes input mapping and adds support for
197           force feedback effects and LEDs on the device.
198
199 config HID_CHERRY
200         tristate "Cherry Cymotion keyboard"
201         depends on HID
202         default !EXPERT
203         ---help---
204         Support for Cherry Cymotion keyboard.
205
206 config HID_CHICONY
207         tristate "Chicony devices"
208         depends on HID
209         default !EXPERT
210         ---help---
211         Support for Chicony Tactical pad and special keys on Chicony keyboards.
212
213 config HID_CORSAIR
214         tristate "Corsair devices"
215         depends on HID && USB && LEDS_CLASS
216         ---help---
217         Support for Corsair devices that are not fully compliant with the
218         HID standard.
219
220         Supported devices:
221         - Vengeance K90
222         - Scimitar PRO RGB
223
224 config HID_COUGAR
225         tristate "Cougar devices"
226         depends on HID
227         help
228         Support for Cougar devices that are not fully compliant with the
229         HID standard.
230
231         Supported devices:
232         - Cougar 500k Gaming Keyboard
233
234 config HID_MACALLY
235         tristate "Macally devices"
236         depends on HID
237         help
238         Support for Macally devices that are not fully compliant with the
239         HID standard.
240
241         supported devices:
242         - Macally ikey keyboard
243
244 config HID_PRODIKEYS
245         tristate "Prodikeys PC-MIDI Keyboard support"
246         depends on HID && SND
247         select SND_RAWMIDI
248         ---help---
249         Support for Prodikeys PC-MIDI Keyboard device support.
250         Say Y here to enable support for this device.
251         - Prodikeys PC-MIDI keyboard.
252           The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI
253           input and one MIDI output. These MIDI jacks appear as
254           a sound "card" in the ALSA sound system.
255           Note: if you say N here, this device will still function as a basic
256           multimedia keyboard, but will lack support for the musical keyboard
257           and some additional multimedia keys.
258
259 config HID_CMEDIA
260         tristate "CMedia CM6533 HID audio jack controls"
261         depends on HID
262         ---help---
263         Support for CMedia CM6533 HID audio jack controls.
264
265 config HID_CP2112
266         tristate "Silicon Labs CP2112 HID USB-to-SMBus Bridge support"
267         depends on USB_HID && HIDRAW && I2C && GPIOLIB
268         select GPIOLIB_IRQCHIP
269         ---help---
270         Support for Silicon Labs CP2112 HID USB to SMBus Master Bridge.
271         This is a HID device driver which registers as an i2c adapter
272         and gpiochip to expose these functions of the CP2112. The
273         customizable USB descriptor fields are exposed as sysfs attributes.
274
275 config HID_CYPRESS
276         tristate "Cypress mouse and barcode readers"
277         depends on HID
278         default !EXPERT
279         ---help---
280         Support for cypress mouse and barcode readers.
281
282 config HID_DRAGONRISE
283         tristate "DragonRise Inc. game controller"
284         depends on HID
285         ---help---
286         Say Y here if you have DragonRise Inc. game controllers.
287         These might be branded as:
288         - Tesun USB-703
289         - Media-tech MT1504 "Rogue"
290         - DVTech JS19 "Gear"
291         - Defender Game Master
292
293 config DRAGONRISE_FF
294         bool "DragonRise Inc. force feedback"
295         depends on HID_DRAGONRISE
296         select INPUT_FF_MEMLESS
297         ---help---
298         Say Y here if you want to enable force feedback support for DragonRise Inc.
299         game controllers.
300
301 config HID_EMS_FF
302         tristate "EMS Production Inc. force feedback support"
303         depends on HID
304         select INPUT_FF_MEMLESS
305         ---help---
306         Say Y here if you want to enable force feedback support for devices by
307         EMS Production Ltd.
308         Currently the following devices are known to be supported:
309          - Trio Linker Plus II
310
311 config HID_ELAN
312         tristate "ELAN USB Touchpad Support"
313         depends on LEDS_CLASS && USB_HID
314         ---help---
315         Say Y to enable support for the USB ELAN touchpad
316         Currently the following devices are known to be supported:
317          - HP Pavilion X2 10-p0XX.
318
319 config HID_ELECOM
320         tristate "ELECOM HID devices"
321         depends on HID
322         ---help---
323         Support for ELECOM devices:
324           - BM084 Bluetooth Mouse
325           - EX-G Trackballs (M-XT3DRBK, M-XT3URBK)
326           - DEFT Trackballs (M-DT1DRBK, M-DT1URBK, M-DT2DRBK, M-DT2URBK)
327           - HUGE Trackballs (M-HT1DRBK, M-HT1URBK)
328
329 config HID_ELO
330         tristate "ELO USB 4000/4500 touchscreen"
331         depends on USB_HID
332         ---help---
333         Support for the ELO USB 4000/4500 touchscreens. Note that this is for
334         different devices than those handled by CONFIG_TOUCHSCREEN_USB_ELO.
335
336 config HID_EZKEY
337         tristate "Ezkey BTC 8193 keyboard"
338         depends on HID
339         default !EXPERT
340         ---help---
341         Support for Ezkey BTC 8193 keyboard.
342
343 config HID_GEMBIRD
344         tristate "Gembird Joypad"
345         depends on HID
346         ---help---
347         Support for Gembird JPD-DualForce 2.
348
349 config HID_GFRM
350         tristate "Google Fiber TV Box remote control support"
351         depends on HID
352         ---help---
353         Support for Google Fiber TV Box remote controls
354
355 config HID_HOLTEK
356         tristate "Holtek HID devices"
357         depends on USB_HID
358         ---help---
359         Support for Holtek based devices:
360           - Holtek On Line Grip based game controller
361           - Trust GXT 18 Gaming Keyboard
362           - Sharkoon Drakonia / Perixx MX-2000 gaming mice
363           - Tracer Sniper TRM-503 / NOVA Gaming Slider X200 /
364             Zalman ZM-GM1
365           - SHARKOON DarkGlider Gaming mouse
366           - LEETGION Hellion Gaming Mouse
367
368 config HOLTEK_FF
369         bool "Holtek On Line Grip force feedback support"
370         depends on HID_HOLTEK
371         select INPUT_FF_MEMLESS
372         ---help---
373           Say Y here if you have a Holtek On Line Grip based game controller
374           and want to have force feedback support for it.
375
376 config HID_GOOGLE_HAMMER
377         tristate "Google Hammer Keyboard"
378         depends on USB_HID && LEDS_CLASS && MFD_CROS_EC
379         ---help---
380         Say Y here if you have a Google Hammer device.
381
382 config HID_GT683R
383         tristate "MSI GT68xR LED support"
384         depends on LEDS_CLASS && USB_HID
385         ---help---
386         Say Y here if you want to enable support for the three MSI GT68xR LEDs
387
388         This driver support following modes:
389           - Normal: LEDs are fully on when enabled
390           - Audio:  LEDs brightness depends on sound level
391           - Breathing: LEDs brightness varies at human breathing rate
392
393         Currently the following devices are know to be supported:
394           - MSI GT683R
395
396 config HID_KEYTOUCH
397         tristate "Keytouch HID devices"
398         depends on HID
399         ---help---
400         Support for Keytouch HID devices not fully compliant with
401         the specification. Currently supported:
402                 - Keytouch IEC 60945
403
404 config HID_KYE
405         tristate "KYE/Genius devices"
406         depends on HID
407         ---help---
408         Support for KYE/Genius devices not fully compliant with HID standard:
409         - Ergo Mouse
410         - EasyPen i405X tablet
411         - MousePen i608X tablet
412         - EasyPen M610X tablet
413
414 config HID_UCLOGIC
415         tristate "UC-Logic"
416         depends on USB_HID
417         ---help---
418         Support for UC-Logic and Huion tablets.
419
420 config HID_WALTOP
421         tristate "Waltop"
422         depends on HID
423         ---help---
424         Support for Waltop tablets.
425
426 config HID_VIEWSONIC
427         tristate "ViewSonic/Signotec"
428         depends on HID
429         help
430           Support for ViewSonic/Signotec PD1011 signature pad.
431
432 config HID_GYRATION
433         tristate "Gyration remote control"
434         depends on HID
435         ---help---
436         Support for Gyration remote control.
437
438 config HID_ICADE
439         tristate "ION iCade arcade controller"
440         depends on HID
441         ---help---
442         Support for the ION iCade arcade controller to work as a joystick.
443
444         To compile this driver as a module, choose M here: the
445         module will be called hid-icade.
446
447 config HID_ITE
448         tristate "ITE devices"
449         depends on HID
450         default !EXPERT
451         ---help---
452         Support for ITE devices not fully compliant with HID standard.
453
454 config HID_JABRA
455         tristate "Jabra USB HID Driver"
456         depends on HID
457         ---help---
458         Support for Jabra USB HID devices.
459
460         Prevents mapping of vendor defined HID usages to input events. Without
461         this driver HID reports from Jabra devices may incorrectly be seen as
462         mouse button events.
463         Say M here if you may ever plug in a Jabra USB device.
464
465 config HID_TWINHAN
466         tristate "Twinhan IR remote control"
467         depends on HID
468         ---help---
469         Support for Twinhan IR remote control.
470
471 config HID_KENSINGTON
472         tristate "Kensington Slimblade Trackball"
473         depends on HID
474         default !EXPERT
475         ---help---
476         Support for Kensington Slimblade Trackball.
477
478 config HID_LCPOWER
479         tristate "LC-Power"
480         depends on HID
481         ---help---
482         Support for LC-Power RC1000MCE RF remote control.
483
484 config HID_LED
485         tristate "Simple RGB LED support"
486         depends on HID
487         depends on LEDS_CLASS
488         ---help---
489         Support for simple RGB LED devices. Currently supported are:
490         - Riso Kagaku Webmail Notifier
491         - Dream Cheeky Webmail Notifier and Friends Alert
492         - ThingM blink(1)
493         - Delcom Visual Signal Indicator Generation 2
494         - Greynut Luxafor
495
496         To compile this driver as a module, choose M here: the
497         module will be called hid-led.
498
499 config HID_LENOVO
500         tristate "Lenovo / Thinkpad devices"
501         depends on HID
502         select NEW_LEDS
503         select LEDS_CLASS
504         ---help---
505         Support for IBM/Lenovo devices that are not fully compliant with HID standard.
506
507         Say Y if you want support for horizontal scrolling of the IBM/Lenovo
508         Scrollpoint mice or the non-compliant features of the Lenovo Thinkpad
509         standalone keyboards, e.g:
510         - ThinkPad USB Keyboard with TrackPoint (supports extra LEDs and trackpoint
511           configuration)
512         - ThinkPad Compact Bluetooth Keyboard with TrackPoint (supports Fn keys)
513         - ThinkPad Compact USB Keyboard with TrackPoint (supports Fn keys)
514
515 config HID_LOGITECH
516         tristate "Logitech devices"
517         depends on HID
518         default !EXPERT
519         ---help---
520         Support for Logitech devices that are not fully compliant with HID standard.
521
522 config HID_LOGITECH_DJ
523         tristate "Logitech Unifying receivers full support"
524         depends on USB_HID
525         depends on HIDRAW
526         depends on HID_LOGITECH
527         select HID_LOGITECH_HIDPP
528         ---help---
529         Say Y if you want support for Logitech Unifying receivers and devices.
530         Unifying receivers are capable of pairing up to 6 Logitech compliant
531         devices to the same receiver. Without this driver it will be handled by
532         generic USB_HID driver and all incoming events will be multiplexed
533         into a single mouse and a single keyboard device.
534
535 config HID_LOGITECH_HIDPP
536         tristate "Logitech HID++ devices support"
537         depends on HID_LOGITECH
538         select POWER_SUPPLY
539         ---help---
540         Support for Logitech devices relyingon the HID++ Logitech specification
541
542         Say Y if you want support for Logitech devices relying on the HID++
543         specification. Such devices are the various Logitech Touchpads (T650,
544         T651, TK820), some mice (Zone Touch mouse), or even keyboards (Solar
545         Keyboard).
546
547 config LOGITECH_FF
548         bool "Logitech force feedback support"
549         depends on HID_LOGITECH
550         select INPUT_FF_MEMLESS
551         help
552           Say Y here if you have one of these devices:
553           - Logitech WingMan Cordless RumblePad
554           - Logitech WingMan Cordless RumblePad 2
555           - Logitech WingMan Force 3D
556
557           and if you want to enable force feedback for them.
558           Note: if you say N here, this device will still be supported, but without
559           force feedback.
560
561 config LOGIRUMBLEPAD2_FF
562         bool "Logitech force feedback support (variant 2)"
563         depends on HID_LOGITECH
564         select INPUT_FF_MEMLESS
565         help
566           Say Y here if you want to enable force feedback support for:
567           - Logitech RumblePad
568           - Logitech Rumblepad 2
569           - Logitech Formula Vibration Feedback Wheel
570
571 config LOGIG940_FF
572         bool "Logitech Flight System G940 force feedback support"
573         depends on HID_LOGITECH
574         select INPUT_FF_MEMLESS
575         help
576           Say Y here if you want to enable force feedback support for Logitech
577           Flight System G940 devices.
578
579 config LOGIWHEELS_FF
580         bool "Logitech wheels configuration and force feedback support"
581         depends on HID_LOGITECH
582         select INPUT_FF_MEMLESS
583         default LOGITECH_FF
584         help
585           Say Y here if you want to enable force feedback and range setting(*)
586           support for following Logitech wheels:
587           - Logitech G25 (*)
588           - Logitech G27 (*)
589           - Logitech G29 (*)
590           - Logitech Driving Force
591           - Logitech Driving Force Pro (*)
592           - Logitech Driving Force GT (*)
593           - Logitech Driving Force EX/RX
594           - Logitech Driving Force Wireless
595           - Logitech Speed Force Wireless
596           - Logitech MOMO Force
597           - Logitech MOMO Racing Force
598           - Logitech Formula Force GP
599           - Logitech Formula Force EX/RX
600           - Logitech Wingman Formula Force GP
601
602 config HID_MAGICMOUSE
603         tristate "Apple Magic Mouse/Trackpad multi-touch support"
604         depends on HID
605         ---help---
606         Support for the Apple Magic Mouse/Trackpad multi-touch.
607
608         Say Y here if you want support for the multi-touch features of the
609         Apple Wireless "Magic" Mouse and the Apple Wireless "Magic" Trackpad.
610
611 config HID_MALTRON
612         tristate "Maltron L90 keyboard"
613         depends on HID
614         ---help---
615         Adds support for the volume up, volume down, mute, and play/pause buttons
616         of the Maltron L90 keyboard.
617
618 config HID_MAYFLASH
619         tristate "Mayflash game controller adapter force feedback"
620         depends on HID
621         select INPUT_FF_MEMLESS
622         ---help---
623         Say Y here if you have HJZ Mayflash PS3 game controller adapters
624         and want to enable force feedback support.
625
626 config HID_REDRAGON
627         tristate "Redragon keyboards"
628         depends on HID
629         default !EXPERT
630         ---help---
631     Support for Redragon keyboards that need fix-ups to work properly.
632
633 config HID_MICROSOFT
634         tristate "Microsoft non-fully HID-compliant devices"
635         depends on HID
636         default !EXPERT
637         select INPUT_FF_MEMLESS
638         ---help---
639         Support for Microsoft devices that are not fully compliant with HID standard.
640
641 config HID_MONTEREY
642         tristate "Monterey Genius KB29E keyboard"
643         depends on HID
644         default !EXPERT
645         ---help---
646         Support for Monterey Genius KB29E.
647
648 config HID_MULTITOUCH
649         tristate "HID Multitouch panels"
650         depends on HID
651         ---help---
652           Generic support for HID multitouch panels.
653
654           Say Y here if you have one of the following devices:
655           - 3M PCT touch screens
656           - ActionStar dual touch panels
657           - Atmel panels
658           - Cando dual touch panels
659           - Chunghwa panels
660           - CJTouch panels
661           - CVTouch panels
662           - Cypress TrueTouch panels
663           - Elan Microelectronics touch panels
664           - Elo TouchSystems IntelliTouch Plus panels
665           - GeneralTouch 'Sensing Win7-TwoFinger' panels
666           - GoodTouch panels
667           - Hanvon dual touch panels
668           - Ilitek dual touch panels
669           - IrTouch Infrared USB panels
670           - LG Display panels (Dell ST2220Tc)
671           - Lumio CrystalTouch panels
672           - MosArt dual-touch panels
673           - Panasonic multitouch panels
674           - PenMount dual touch panels
675           - Perixx Peripad 701 touchpad
676           - PixArt optical touch screen
677           - Pixcir dual touch panels
678           - Quanta panels
679           - eGalax dual-touch panels, including the Joojoo and Wetab tablets
680           - SiS multitouch panels
681           - Stantum multitouch panels
682           - Touch International Panels
683           - Unitec Panels
684           - Wistron optical touch panels
685           - XAT optical touch panels
686           - Xiroku optical touch panels
687           - Zytronic touch panels
688
689           If unsure, say N.
690
691           To compile this driver as a module, choose M here: the
692           module will be called hid-multitouch.
693
694 config HID_NTI
695         tristate "NTI keyboard adapters"
696         ---help---
697         Support for the "extra" Sun keyboard keys on keyboards attached
698         through Network Technologies USB-SUN keyboard adapters.
699
700 config HID_NTRIG
701         tristate "N-Trig touch screen"
702         depends on USB_HID
703         ---help---
704         Support for N-Trig touch screen.
705
706 config HID_ORTEK
707         tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad"
708         depends on HID
709         ---help---
710         There are certain devices which have LogicalMaximum wrong in the keyboard
711         usage page of their report descriptor. The most prevailing ones so far
712         are manufactured by Ortek, thus the name of the driver. Currently
713         supported devices by this driver are
714
715            - Ortek PKB-1700
716            - Ortek WKB-2000
717            - Skycable wireless presenter
718
719 config HID_PANTHERLORD
720         tristate "Pantherlord/GreenAsia game controller"
721         depends on HID
722         ---help---
723           Say Y here if you have a PantherLord/GreenAsia based game controller
724           or adapter.
725
726 config PANTHERLORD_FF
727         bool "Pantherlord force feedback support"
728         depends on HID_PANTHERLORD
729         select INPUT_FF_MEMLESS
730         ---help---
731           Say Y here if you have a PantherLord/GreenAsia based game controller
732           or adapter and want to enable force feedback support for it.
733
734 config HID_PENMOUNT
735         tristate "Penmount touch device"
736         depends on USB_HID
737         ---help---
738           This selects a driver for the PenMount 6000 touch controller.
739
740           The driver works around a problem in the report descript allowing
741           the userspace to touch events instead of mouse events.
742
743           Say Y here if you have a Penmount based touch controller.
744
745 config HID_PETALYNX
746         tristate "Petalynx Maxter remote control"
747         depends on HID
748         ---help---
749         Support for Petalynx Maxter remote control.
750
751 config HID_PICOLCD
752         tristate "PicoLCD (graphic version)"
753         depends on HID
754         ---help---
755           This provides support for Minibox PicoLCD devices, currently
756           only the graphical ones are supported.
757
758           This includes support for the following device features:
759           - Keypad
760           - Switching between Firmware and Flash mode
761           - EEProm / Flash access     (via debugfs)
762           Features selectively enabled:
763           - Framebuffer for monochrome 256x64 display
764           - Backlight control
765           - Contrast control
766           - General purpose outputs
767           Features that are not (yet) supported:
768           - IR
769
770 config HID_PICOLCD_FB
771         bool "Framebuffer support" if EXPERT
772         default !EXPERT
773         depends on HID_PICOLCD
774         depends on HID_PICOLCD=FB || FB=y
775         select FB_DEFERRED_IO
776         select FB_SYS_FILLRECT
777         select FB_SYS_COPYAREA
778         select FB_SYS_IMAGEBLIT
779         select FB_SYS_FOPS
780         ---help---
781           Provide access to PicoLCD's 256x64 monochrome display via a
782           framebuffer device.
783
784 config HID_PICOLCD_BACKLIGHT
785         bool "Backlight control" if EXPERT
786         default !EXPERT
787         depends on HID_PICOLCD
788         depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y
789         ---help---
790           Provide access to PicoLCD's backlight control via backlight
791           class.
792
793 config HID_PICOLCD_LCD
794         bool "Contrast control" if EXPERT
795         default !EXPERT
796         depends on HID_PICOLCD
797         depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y
798         ---help---
799           Provide access to PicoLCD's LCD contrast via lcd class.
800
801 config HID_PICOLCD_LEDS
802         bool "GPO via leds class" if EXPERT
803         default !EXPERT
804         depends on HID_PICOLCD
805         depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y
806         ---help---
807           Provide access to PicoLCD's GPO pins via leds class.
808
809 config HID_PICOLCD_CIR
810         bool "CIR via RC class" if EXPERT
811         default !EXPERT
812         depends on HID_PICOLCD
813         depends on HID_PICOLCD=RC_CORE || RC_CORE=y
814         ---help---
815           Provide access to PicoLCD's CIR interface via remote control (LIRC).
816
817 config HID_PLANTRONICS
818         tristate "Plantronics USB HID Driver"
819         depends on HID
820         ---help---
821           Provides HID support for Plantronics USB audio devices.
822           Correctly maps vendor unique volume up/down HID usages to
823           KEY_VOLUMEUP and KEY_VOLUMEDOWN events and prevents core mapping
824           of other vendor unique HID usages to random mouse events.
825
826           Say M here if you may ever plug in a Plantronics USB audio device.
827
828 config HID_PRIMAX
829         tristate "Primax non-fully HID-compliant devices"
830         depends on HID
831         ---help---
832         Support for Primax devices that are not fully compliant with the
833         HID standard.
834
835 config HID_RETRODE
836         tristate "Retrode 2 USB adapter for vintage video games"
837         depends on USB_HID
838         ---help---
839         Support for
840           * Retrode 2 cartridge and controller adapter
841
842 config HID_ROCCAT
843         tristate "Roccat device support"
844         depends on USB_HID
845         ---help---
846         Support for Roccat devices.
847         Say Y here if you have a Roccat mouse or keyboard and want
848         support for its special functionalities.
849
850 config HID_SAITEK
851         tristate "Saitek (Mad Catz) non-fully HID-compliant devices"
852         depends on HID
853         ---help---
854         Support for Saitek devices that are not fully compliant with the
855         HID standard.
856
857         Supported devices:
858         - PS1000 Dual Analog Pad
859         - Saitek R.A.T.7, R.A.T.9, M.M.O.7 Gaming Mice
860         - Mad Catz R.A.T.5, R.A.T.9 Gaming Mice
861
862 config HID_SAMSUNG
863         tristate "Samsung InfraRed remote control or keyboards"
864         depends on HID
865         ---help---
866         Support for Samsung InfraRed remote control or keyboards.
867
868 config HID_SONY
869         tristate "Sony PS2/3/4 accessories"
870         depends on USB_HID
871         depends on NEW_LEDS
872         depends on LEDS_CLASS
873         select POWER_SUPPLY
874         ---help---
875         Support for
876
877           * Sony PS3 6-axis controllers
878           * Sony PS4 DualShock 4 controllers
879           * Buzz controllers
880           * Sony PS3 Blue-ray Disk Remote Control (Bluetooth)
881           * Logitech Harmony adapter for Sony Playstation 3 (Bluetooth)
882
883 config SONY_FF
884         bool "Sony PS2/3/4 accessories force feedback support" 
885         depends on HID_SONY
886         select INPUT_FF_MEMLESS
887         ---help---
888         Say Y here if you have a Sony PS2/3/4 accessory and want to enable
889         force feedback support for it.
890
891 config HID_SPEEDLINK
892         tristate "Speedlink VAD Cezanne mouse support"
893         depends on HID
894         ---help---
895         Support for Speedlink Vicious and Divine Cezanne mouse.
896
897 config HID_STEAM
898         tristate "Steam Controller support"
899         depends on HID
900         select POWER_SUPPLY
901         ---help---
902         Say Y here if you have a Steam Controller if you want to use it
903         without running the Steam Client. It supports both the wired and
904         the wireless adaptor.
905
906 config HID_STEELSERIES
907         tristate "Steelseries SRW-S1 steering wheel support"
908         depends on HID
909         ---help---
910         Support for Steelseries SRW-S1 steering wheel
911
912 config HID_SUNPLUS
913         tristate "Sunplus wireless desktop"
914         depends on HID
915         ---help---
916         Support for Sunplus wireless desktop.
917
918 config HID_RMI
919         tristate "Synaptics RMI4 device support"
920         depends on HID
921         select RMI4_CORE
922         select RMI4_F03
923         select RMI4_F11
924         select RMI4_F12
925         select RMI4_F30
926         ---help---
927         Support for Synaptics RMI4 touchpads.
928         Say Y here if you have a Synaptics RMI4 touchpads over i2c-hid or usbhid
929         and want support for its special functionalities.
930
931 config HID_GREENASIA
932         tristate "GreenAsia (Product ID 0x12) game controller support"
933         depends on HID
934         ---help---
935           Say Y here if you have a GreenAsia (Product ID 0x12) based game
936           controller or adapter.
937
938 config GREENASIA_FF
939         bool "GreenAsia (Product ID 0x12) force feedback support"
940         depends on HID_GREENASIA
941         select INPUT_FF_MEMLESS
942         ---help---
943         Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
944         (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
945         and want to enable force feedback support for it.
946
947 config HID_HYPERV_MOUSE
948         tristate "Microsoft Hyper-V mouse driver"
949         depends on HYPERV
950         ---help---
951         Select this option to enable the Hyper-V mouse driver.
952
953 config HID_SMARTJOYPLUS
954         tristate "SmartJoy PLUS PS2/USB adapter support"
955         depends on HID
956         ---help---
957         Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box,
958         Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro.
959
960         Note that DDR (Dance Dance Revolution) mode is not supported, nor
961         is pressure sensitive buttons on the pro models.
962
963 config SMARTJOYPLUS_FF
964         bool "SmartJoy PLUS PS2/USB adapter force feedback support"
965         depends on HID_SMARTJOYPLUS
966         select INPUT_FF_MEMLESS
967         ---help---
968         Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
969         enable force feedback support for it.
970
971 config HID_TIVO
972         tristate "TiVo Slide Bluetooth remote control support"
973         depends on HID
974         ---help---
975         Say Y if you have a TiVo Slide Bluetooth remote control.
976
977 config HID_TOPSEED
978         tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
979         depends on HID
980         ---help---
981         Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
982         CLLRCMCE remote control.
983
984 config HID_THINGM
985         tristate "ThingM blink(1) USB RGB LED"
986         depends on HID
987         depends on LEDS_CLASS
988         select HID_LED
989         ---help---
990         Support for the ThingM blink(1) USB RGB LED. This driver has been
991         merged into the generic hid led driver. Config symbol HID_THINGM
992         just selects HID_LED and will be removed soon.
993
994 config HID_THRUSTMASTER
995         tristate "ThrustMaster devices support"
996         depends on HID
997         ---help---
998           Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
999           a THRUSTMASTER Ferrari GT Rumble Wheel.
1000
1001 config THRUSTMASTER_FF
1002         bool "ThrustMaster devices force feedback support"
1003         depends on HID_THRUSTMASTER
1004         select INPUT_FF_MEMLESS
1005         ---help---
1006           Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
1007           a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
1008           Rumble Force or Force Feedback Wheel.
1009
1010 config HID_UDRAW_PS3
1011         tristate "THQ PS3 uDraw tablet"
1012         depends on HID
1013         ---help---
1014           Say Y here if you want to use the THQ uDraw gaming tablet for
1015           the PS3.
1016
1017 config HID_U2FZERO
1018         tristate "U2F Zero LED and RNG support"
1019         depends on USB_HID
1020         depends on LEDS_CLASS
1021         depends on HW_RANDOM
1022         help
1023           Support for the LED of the U2F Zero device.
1024
1025           U2F Zero supports custom commands for blinking the LED
1026           and getting data from the internal hardware RNG.
1027           The internal hardware can be used to feed the enthropy pool.
1028
1029           U2F Zero only supports blinking its LED, so this driver doesn't
1030           allow setting the brightness to anything but 1, which will
1031           trigger a single blink and immediately reset to back 0.
1032
1033 config HID_WACOM
1034         tristate "Wacom Intuos/Graphire tablet support (USB)"
1035         depends on USB_HID
1036         select POWER_SUPPLY
1037         select NEW_LEDS
1038         select LEDS_CLASS
1039         select LEDS_TRIGGERS
1040         help
1041           Say Y here if you want to use the USB or BT version of the Wacom Intuos
1042           or Graphire tablet.
1043
1044           To compile this driver as a module, choose M here: the
1045           module will be called wacom.
1046
1047 config HID_WIIMOTE
1048         tristate "Nintendo Wii / Wii U peripherals"
1049         depends on HID
1050         depends on LEDS_CLASS
1051         select POWER_SUPPLY
1052         select INPUT_FF_MEMLESS
1053         ---help---
1054         Support for Nintendo Wii and Wii U Bluetooth peripherals. Supported
1055         devices are the Wii Remote and its extension devices, but also devices
1056         based on the Wii Remote like the Wii U Pro Controller or the
1057         Wii Balance Board.
1058
1059         Support for all official Nintendo extensions is available, however, 3rd
1060         party extensions might not be supported. Please report these devices to:
1061           http://github.com/dvdhrm/xwiimote/issues
1062
1063         Other Nintendo Wii U peripherals that are IEEE 802.11 based (including
1064         the Wii U Gamepad) might be supported in the future. But currently
1065         support is limited to Bluetooth based devices.
1066
1067         If unsure, say N.
1068
1069         To compile this driver as a module, choose M here: the
1070         module will be called hid-wiimote.
1071
1072 config HID_XINMO
1073         tristate "Xin-Mo non-fully compliant devices"
1074         depends on HID
1075         ---help---
1076         Support for Xin-Mo devices that are not fully compliant with the HID
1077         standard. Currently only supports the Xin-Mo Dual Arcade. Say Y here
1078         if you have a Xin-Mo Dual Arcade controller.
1079
1080 config HID_ZEROPLUS
1081         tristate "Zeroplus based game controller support"
1082         depends on HID
1083         ---help---
1084           Say Y here if you have a Zeroplus based game controller.
1085
1086 config ZEROPLUS_FF
1087         bool "Zeroplus based game controller force feedback support"
1088         depends on HID_ZEROPLUS
1089         select INPUT_FF_MEMLESS
1090         ---help---
1091           Say Y here if you have a Zeroplus based game controller and want
1092           to have force feedback support for it.
1093
1094 config HID_ZYDACRON
1095         tristate "Zydacron remote control support"
1096         depends on HID
1097         ---help---
1098         Support for Zydacron remote control.
1099
1100 config HID_SENSOR_HUB
1101         tristate "HID Sensors framework support"
1102         depends on HID && HAS_IOMEM
1103         select MFD_CORE
1104         default n
1105         ---help---
1106           Support for HID Sensor framework. This creates a MFD instance
1107           for a sensor hub and identifies all the sensors connected to it.
1108           Each sensor is registered as a MFD cell, so that sensor specific
1109           processing can be done in a separate driver. Each sensor
1110           drivers can use the service provided by this driver to register
1111           for events and handle data streams. Each sensor driver can format
1112           data and present to user mode using input or IIO interface.
1113
1114 config HID_SENSOR_CUSTOM_SENSOR
1115         tristate "HID Sensors hub custom sensor support"
1116         depends on HID_SENSOR_HUB
1117         default n
1118         ---help---
1119           HID Sensor hub specification allows definition of some custom and
1120           generic sensors. Unlike other HID sensors, they can't be exported
1121           via Linux IIO because of custom fields. This is up to the manufacturer
1122           to decide how to interpret these special sensor ids and process in
1123           the user space. Currently some manufacturers are using these ids for
1124           sensor calibration and debugging other sensors. Manufacturers
1125           should't use these special custom sensor ids to export any of the
1126           standard sensors.
1127           Select this config option for custom/generic sensor support.
1128
1129 config HID_ALPS
1130         tristate "Alps HID device support"
1131         depends on HID
1132         ---help---
1133         Support for Alps I2C HID touchpads and StickPointer.
1134         Say Y here if you have a Alps touchpads over i2c-hid or usbhid
1135         and want support for its special functionalities.
1136
1137 endmenu
1138
1139 endif # HID
1140
1141 source "drivers/hid/usbhid/Kconfig"
1142
1143 source "drivers/hid/i2c-hid/Kconfig"
1144
1145 source "drivers/hid/intel-ish-hid/Kconfig"
1146
1147 endmenu