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