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