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