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