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