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_PLAYSTATION
857 tristate "PlayStation HID Driver"
858 depends on HID
859 select CRC32
860 select POWER_SUPPLY
861 help
862 Provides support for Sony PS5 controllers including support for
863 its special functionalities e.g. touchpad, lights and motion
864 sensors.
865
866config PLAYSTATION_FF
867 bool "PlayStation force feedback support"
868 depends on HID_PLAYSTATION
869 select INPUT_FF_MEMLESS
870 help
871 Say Y here if you would like to enable force feedback support for
872 PlayStation game controllers.
873
874config HID_PRIMAX
875 tristate "Primax non-fully HID-compliant devices"
876 depends on HID
877 help
878 Support for Primax devices that are not fully compliant with the
879 HID standard.
880
881config HID_RETRODE
882 tristate "Retrode 2 USB adapter for vintage video games"
883 depends on USB_HID
884 help
885 Support for
886 * Retrode 2 cartridge and controller adapter
887
888config HID_ROCCAT
889 tristate "Roccat device support"
890 depends on USB_HID
891 help
892 Support for Roccat devices.
893 Say Y here if you have a Roccat mouse or keyboard and want
894 support for its special functionalities.
895
896config HID_SAITEK
897 tristate "Saitek (Mad Catz) non-fully HID-compliant devices"
898 depends on HID
899 help
900 Support for Saitek devices that are not fully compliant with the
901 HID standard.
902
903 Supported devices:
904 - PS1000 Dual Analog Pad
905 - Saitek R.A.T.7, R.A.T.9, M.M.O.7 Gaming Mice
906 - Mad Catz R.A.T.5, R.A.T.9 Gaming Mice
907
908config HID_SAMSUNG
909 tristate "Samsung InfraRed remote control or keyboards"
910 depends on HID
911 help
912 Support for Samsung InfraRed remote control or keyboards.
913
914config HID_SONY
915 tristate "Sony PS2/3/4 accessories"
916 depends on USB_HID
917 depends on NEW_LEDS
918 depends on LEDS_CLASS
919 select POWER_SUPPLY
920 select CRC32
921 help
922 Support for
923
924 * Sony PS3 6-axis controllers
925 * Sony PS4 DualShock 4 controllers
926 * Buzz controllers
927 * Sony PS3 Blue-ray Disk Remote Control (Bluetooth)
928 * Logitech Harmony adapter for Sony Playstation 3 (Bluetooth)
929 * Guitar Hero Live PS3 and Wii U guitar dongles
930 * Guitar Hero PS3 and PC guitar dongles
931
932config SONY_FF
933 bool "Sony PS2/3/4 accessories force feedback support"
934 depends on HID_SONY
935 select INPUT_FF_MEMLESS
936 help
937 Say Y here if you have a Sony PS2/3/4 accessory and want to enable
938 force feedback support for it.
939
940config HID_SPEEDLINK
941 tristate "Speedlink VAD Cezanne mouse support"
942 depends on HID
943 help
944 Support for Speedlink Vicious and Divine Cezanne mouse.
945
946config HID_STEAM
947 tristate "Steam Controller support"
948 depends on HID
949 select POWER_SUPPLY
950 help
951 Say Y here if you have a Steam Controller if you want to use it
952 without running the Steam Client. It supports both the wired and
953 the wireless adaptor.
954
955config HID_STEELSERIES
956 tristate "Steelseries SRW-S1 steering wheel support"
957 depends on HID
958 help
959 Support for Steelseries SRW-S1 steering wheel
960
961config HID_SUNPLUS
962 tristate "Sunplus wireless desktop"
963 depends on HID
964 help
965 Support for Sunplus wireless desktop.
966
967config HID_RMI
968 tristate "Synaptics RMI4 device support"
969 depends on HID
970 select RMI4_CORE
971 select RMI4_F03
972 select RMI4_F11
973 select RMI4_F12
974 select RMI4_F30
975 help
976 Support for Synaptics RMI4 touchpads.
977 Say Y here if you have a Synaptics RMI4 touchpads over i2c-hid or usbhid
978 and want support for its special functionalities.
979
980config HID_GREENASIA
981 tristate "GreenAsia (Product ID 0x12) game controller support"
982 depends on HID
983 help
984 Say Y here if you have a GreenAsia (Product ID 0x12) based game
985 controller or adapter.
986
987config GREENASIA_FF
988 bool "GreenAsia (Product ID 0x12) force feedback support"
989 depends on HID_GREENASIA
990 select INPUT_FF_MEMLESS
991 help
992 Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
993 (like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
994 and want to enable force feedback support for it.
995
996config HID_HYPERV_MOUSE
997 tristate "Microsoft Hyper-V mouse driver"
998 depends on HYPERV
999 help
1000 Select this option to enable the Hyper-V mouse driver.
1001
1002config HID_SMARTJOYPLUS
1003 tristate "SmartJoy PLUS PS2/USB adapter support"
1004 depends on HID
1005 help
1006 Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box,
1007 Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro.
1008
1009 Note that DDR (Dance Dance Revolution) mode is not supported, nor
1010 is pressure sensitive buttons on the pro models.
1011
1012config SMARTJOYPLUS_FF
1013 bool "SmartJoy PLUS PS2/USB adapter force feedback support"
1014 depends on HID_SMARTJOYPLUS
1015 select INPUT_FF_MEMLESS
1016 help
1017 Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
1018 enable force feedback support for it.
1019
1020config HID_TIVO
1021 tristate "TiVo Slide Bluetooth remote control support"
1022 depends on HID
1023 help
1024 Say Y if you have a TiVo Slide Bluetooth remote control.
1025
1026config HID_TOPSEED
1027 tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
1028 depends on HID
1029 help
1030 Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
1031 CLLRCMCE remote control.
1032
1033config HID_THINGM
1034 tristate "ThingM blink(1) USB RGB LED"
1035 depends on HID
1036 depends on LEDS_CLASS
1037 select HID_LED
1038 help
1039 Support for the ThingM blink(1) USB RGB LED. This driver has been
1040 merged into the generic hid led driver. Config symbol HID_THINGM
1041 just selects HID_LED and will be removed soon.
1042
1043config HID_THRUSTMASTER
1044 tristate "ThrustMaster devices support"
1045 depends on HID
1046 help
1047 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
1048 a THRUSTMASTER Ferrari GT Rumble Wheel.
1049
1050config THRUSTMASTER_FF
1051 bool "ThrustMaster devices force feedback support"
1052 depends on HID_THRUSTMASTER
1053 select INPUT_FF_MEMLESS
1054 help
1055 Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
1056 a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
1057 Rumble Force or Force Feedback Wheel.
1058
1059config HID_UDRAW_PS3
1060 tristate "THQ PS3 uDraw tablet"
1061 depends on HID
1062 help
1063 Say Y here if you want to use the THQ uDraw gaming tablet for
1064 the PS3.
1065
1066config HID_U2FZERO
1067 tristate "U2F Zero LED and RNG support"
1068 depends on USB_HID
1069 depends on LEDS_CLASS
1070 depends on HW_RANDOM
1071 help
1072 Support for the LED of the U2F Zero device.
1073
1074 U2F Zero supports custom commands for blinking the LED
1075 and getting data from the internal hardware RNG.
1076 The internal hardware can be used to feed the enthropy pool.
1077
1078 U2F Zero only supports blinking its LED, so this driver doesn't
1079 allow setting the brightness to anything but 1, which will
1080 trigger a single blink and immediately reset back to 0.
1081
1082config HID_WACOM
1083 tristate "Wacom Intuos/Graphire tablet support (USB)"
1084 depends on USB_HID
1085 select POWER_SUPPLY
1086 select NEW_LEDS
1087 select LEDS_CLASS
1088 select LEDS_TRIGGERS
1089 help
1090 Say Y here if you want to use the USB or BT version of the Wacom Intuos
1091 or Graphire tablet.
1092
1093 To compile this driver as a module, choose M here: the
1094 module will be called wacom.
1095
1096config HID_WIIMOTE
1097 tristate "Nintendo Wii / Wii U peripherals"
1098 depends on HID
1099 depends on LEDS_CLASS
1100 select POWER_SUPPLY
1101 select INPUT_FF_MEMLESS
1102 help
1103 Support for Nintendo Wii and Wii U Bluetooth peripherals. Supported
1104 devices are the Wii Remote and its extension devices, but also devices
1105 based on the Wii Remote like the Wii U Pro Controller or the
1106 Wii Balance Board.
1107
1108 Support for all official Nintendo extensions is available, however, 3rd
1109 party extensions might not be supported. Please report these devices to:
1110 http://github.com/dvdhrm/xwiimote/issues
1111
1112 Other Nintendo Wii U peripherals that are IEEE 802.11 based (including
1113 the Wii U Gamepad) might be supported in the future. But currently
1114 support is limited to Bluetooth based devices.
1115
1116 If unsure, say N.
1117
1118 To compile this driver as a module, choose M here: the
1119 module will be called hid-wiimote.
1120
1121config HID_XINMO
1122 tristate "Xin-Mo non-fully compliant devices"
1123 depends on HID
1124 help
1125 Support for Xin-Mo devices that are not fully compliant with the HID
1126 standard. Currently only supports the Xin-Mo Dual Arcade. Say Y here
1127 if you have a Xin-Mo Dual Arcade controller.
1128
1129config HID_ZEROPLUS
1130 tristate "Zeroplus based game controller support"
1131 depends on HID
1132 help
1133 Say Y here if you have a Zeroplus based game controller.
1134
1135config ZEROPLUS_FF
1136 bool "Zeroplus based game controller force feedback support"
1137 depends on HID_ZEROPLUS
1138 select INPUT_FF_MEMLESS
1139 help
1140 Say Y here if you have a Zeroplus based game controller and want
1141 to have force feedback support for it.
1142
1143config HID_ZYDACRON
1144 tristate "Zydacron remote control support"
1145 depends on HID
1146 help
1147 Support for Zydacron remote control.
1148
1149config HID_SENSOR_HUB
1150 tristate "HID Sensors framework support"
1151 depends on HID && HAS_IOMEM
1152 select MFD_CORE
1153 default n
1154 help
1155 Support for HID Sensor framework. This creates a MFD instance
1156 for a sensor hub and identifies all the sensors connected to it.
1157 Each sensor is registered as a MFD cell, so that sensor specific
1158 processing can be done in a separate driver. Each sensor
1159 drivers can use the service provided by this driver to register
1160 for events and handle data streams. Each sensor driver can format
1161 data and present to user mode using input or IIO interface.
1162
1163config HID_SENSOR_CUSTOM_SENSOR
1164 tristate "HID Sensors hub custom sensor support"
1165 depends on HID_SENSOR_HUB
1166 default n
1167 help
1168 HID Sensor hub specification allows definition of some custom and
1169 generic sensors. Unlike other HID sensors, they can't be exported
1170 via Linux IIO because of custom fields. This is up to the manufacturer
1171 to decide how to interpret these special sensor ids and process in
1172 the user space. Currently some manufacturers are using these ids for
1173 sensor calibration and debugging other sensors. Manufacturers
1174 shouldn't use these special custom sensor ids to export any of the
1175 standard sensors.
1176 Select this config option for custom/generic sensor support.
1177
1178config HID_ALPS
1179 tristate "Alps HID device support"
1180 depends on HID
1181 help
1182 Support for Alps I2C HID touchpads and StickPointer.
1183 Say Y here if you have a Alps touchpads over i2c-hid or usbhid
1184 and want support for its special functionalities.
1185
1186config HID_MCP2221
1187 tristate "Microchip MCP2221 HID USB-to-I2C/SMbus host support"
1188 depends on USB_HID && I2C
1189 depends on GPIOLIB
1190 help
1191 Provides I2C and SMBUS host adapter functionality over USB-HID
1192 through MCP2221 device.
1193
1194 To compile this driver as a module, choose M here: the module
1195 will be called hid-mcp2221.ko.
1196
1197endmenu
1198
1199endif # HID
1200
1201source "drivers/hid/usbhid/Kconfig"
1202
1203source "drivers/hid/i2c-hid/Kconfig"
1204
1205source "drivers/hid/intel-ish-hid/Kconfig"
1206
1207source "drivers/hid/amd-sfh-hid/Kconfig"
1208
1209endmenu