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