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