xref: /openbmc/linux/drivers/hid/Kconfig (revision 95c96174)
1#
2# HID driver configuration
3#
4menuconfig HID_SUPPORT
5	bool "HID Devices"
6	depends on INPUT
7	default y
8	---help---
9	  Say Y here to get to see options for various computer-human interface
10	  device drivers. This option alone does not add any kernel code.
11
12	  If you say N, all options in this submenu will be skipped and disabled.
13
14if HID_SUPPORT
15
16config HID
17	tristate "Generic HID support"
18	depends on INPUT
19	default y
20	---help---
21	  A human interface device (HID) is a type of computer device that
22	  interacts directly with and takes input from humans. The term "HID"
23	  most commonly used to refer to the USB-HID specification, but other
24	  devices (such as, but not strictly limited to, Bluetooth) are
25	  designed using HID specification (this involves certain keyboards,
26	  mice, tablets, etc). This option compiles into kernel the generic
27	  HID layer code (parser, usages, etc.), which can then be used by
28	  transport-specific HID implementation (like USB or Bluetooth).
29
30	  For docs and specs, see http://www.usb.org/developers/hidpage/
31
32	  If unsure, say Y.
33
34config HID_BATTERY_STRENGTH
35	bool
36	depends on HID && POWER_SUPPLY && HID = POWER_SUPPLY
37	default y
38
39config HIDRAW
40	bool "/dev/hidraw raw HID device support"
41	depends on HID
42	---help---
43	Say Y here if you want to support HID devices (from the USB
44	specification standpoint) that aren't strictly user interface
45	devices, like monitor controls and Uninterruptable Power Supplies.
46
47	This module supports these devices separately using a separate
48	event interface on /dev/hidraw.
49
50	There is also a /dev/hiddev configuration option in the USB HID
51	configuration menu. In comparison to hiddev, this device does not process
52	the hid events at all (no parsing, no lookups). This lets applications
53	to work on raw hid events when they want to, and avoid using transport-specific
54	userspace libhid/libusb libraries.
55
56	If unsure, say Y.
57
58source "drivers/hid/usbhid/Kconfig"
59
60menu "Special HID drivers"
61	depends on HID
62
63config HID_A4TECH
64	tristate "A4 tech mice" if EXPERT
65	depends on USB_HID
66	default !EXPERT
67	---help---
68	Support for A4 tech X5 and WOP-35 / Trust 450L mice.
69
70config HID_ACRUX
71	tristate "ACRUX game controller support"
72	depends on USB_HID
73	---help---
74	Say Y here if you want to enable support for ACRUX game controllers.
75
76config HID_ACRUX_FF
77	bool "ACRUX force feedback support"
78	depends on HID_ACRUX
79	select INPUT_FF_MEMLESS
80	---help---
81	Say Y here if you want to enable force feedback support for ACRUX
82	game controllers.
83
84config HID_APPLE
85	tristate "Apple {i,Power,Mac}Books" if EXPERT
86	depends on (USB_HID || BT_HIDP)
87	default !EXPERT
88	---help---
89	Support for some Apple devices which less or more break
90	HID specification.
91
92	Say Y here if you want support for keyboards of	Apple iBooks, PowerBooks,
93	MacBooks, MacBook Pros and Apple Aluminum.
94
95config HID_BELKIN
96	tristate "Belkin Flip KVM and Wireless keyboard" if EXPERT
97	depends on USB_HID
98	default !EXPERT
99	---help---
100	Support for Belkin Flip KVM and Wireless keyboard.
101
102config HID_CHERRY
103	tristate "Cherry Cymotion keyboard" if EXPERT
104	depends on USB_HID
105	default !EXPERT
106	---help---
107	Support for Cherry Cymotion keyboard.
108
109config HID_CHICONY
110	tristate "Chicony Tactical pad" if EXPERT
111	depends on USB_HID
112	default !EXPERT
113	---help---
114	Support for Chicony Tactical pad.
115
116config HID_PRODIKEYS
117	tristate "Prodikeys PC-MIDI Keyboard support"
118	depends on USB_HID && SND
119	select SND_RAWMIDI
120	---help---
121	Support for Prodikeys PC-MIDI Keyboard device support.
122	Say Y here to enable support for this device.
123	- Prodikeys PC-MIDI keyboard.
124	  The Prodikeys PC-MIDI acts as a USB Audio device, with one MIDI
125	  input and one MIDI output. These MIDI jacks appear as
126	  a sound "card" in the ALSA sound system.
127	  Note: if you say N here, this device will still function as a basic
128	  multimedia keyboard, but will lack support for the musical keyboard
129	  and some additional multimedia keys.
130
131config HID_CYPRESS
132	tristate "Cypress mouse and barcode readers" if EXPERT
133	depends on USB_HID
134	default !EXPERT
135	---help---
136	Support for cypress mouse and barcode readers.
137
138config HID_DRAGONRISE
139	tristate "DragonRise Inc. game controller"
140	depends on USB_HID
141	---help---
142	Say Y here if you have DragonRise Inc. game controllers.
143	These might be branded as:
144	- Tesun USB-703
145	- Media-tech MT1504 "Rogue"
146	- DVTech JS19 "Gear"
147	- Defender Game Master
148
149config DRAGONRISE_FF
150	bool "DragonRise Inc. force feedback"
151	depends on HID_DRAGONRISE
152	select INPUT_FF_MEMLESS
153	---help---
154	Say Y here if you want to enable force feedback support for DragonRise Inc.
155	game controllers.
156
157config HID_EMS_FF
158	tristate "EMS Production Inc. force feedback support"
159	depends on USB_HID
160	select INPUT_FF_MEMLESS
161	---help---
162	Say Y here if you want to enable force feedback support for devices by
163	EMS Production Ltd.
164	Currently the following devices are known to be supported:
165	 - Trio Linker Plus II
166
167config HID_ELECOM
168	tristate "ELECOM BM084 bluetooth mouse"
169	depends on BT_HIDP
170	---help---
171	Support for the ELECOM BM084 (bluetooth mouse).
172
173config HID_EZKEY
174	tristate "Ezkey BTC 8193 keyboard" if EXPERT
175	depends on USB_HID
176	default !EXPERT
177	---help---
178	Support for Ezkey BTC 8193 keyboard.
179
180config HID_HOLTEK
181	tristate "Holtek On Line Grip based game controller support"
182	depends on USB_HID
183	---help---
184	  Say Y here if you have a Holtek On Line Grip based game controller.
185
186config HOLTEK_FF
187	bool "Holtek On Line Grip force feedback support"
188	depends on HID_HOLTEK
189	select INPUT_FF_MEMLESS
190	---help---
191	  Say Y here if you have a Holtek On Line Grip based game controller
192	  and want to have force feedback support for it.
193
194config HID_KEYTOUCH
195	tristate "Keytouch HID devices"
196	depends on USB_HID
197	---help---
198	Support for Keytouch HID devices not fully compliant with
199	the specification. Currently supported:
200		- Keytouch IEC 60945
201
202config HID_KYE
203	tristate "KYE/Genius devices"
204	depends on USB_HID
205	---help---
206	Support for KYE/Genius devices not fully compliant with HID standard:
207	- Ergo Mouse
208	- EasyPen i405X tablet
209	- MousePen i608X tablet
210	- EasyPen M610X tablet
211
212config HID_UCLOGIC
213	tristate "UC-Logic"
214	depends on USB_HID
215	---help---
216	Support for UC-Logic tablets.
217
218config HID_WALTOP
219	tristate "Waltop"
220	depends on USB_HID
221	---help---
222	Support for Waltop tablets.
223
224config HID_GYRATION
225	tristate "Gyration remote control"
226	depends on USB_HID
227	---help---
228	Support for Gyration remote control.
229
230config HID_TWINHAN
231	tristate "Twinhan IR remote control"
232	depends on USB_HID
233	---help---
234	Support for Twinhan IR remote control.
235
236config HID_KENSINGTON
237	tristate "Kensington Slimblade Trackball" if EXPERT
238	depends on USB_HID
239	default !EXPERT
240	---help---
241	Support for Kensington Slimblade Trackball.
242
243config HID_LCPOWER
244	tristate "LC-Power"
245	depends on USB_HID
246	---help---
247	Support for LC-Power RC1000MCE RF remote control.
248
249config HID_LOGITECH
250	tristate "Logitech devices" if EXPERT
251	depends on USB_HID
252	default !EXPERT
253	---help---
254	Support for Logitech devices that are not fully compliant with HID standard.
255
256config HID_LOGITECH_DJ
257	tristate "Logitech Unifying receivers full support"
258	depends on HID_LOGITECH
259	default m
260	---help---
261	Say Y if you want support for Logitech Unifying receivers and devices.
262	Unifying receivers are capable of pairing up to 6 Logitech compliant
263	devices to the same receiver. Without this driver it will be handled by
264	generic USB_HID driver and all incomming events will be multiplexed
265	into a single mouse and a single keyboard device.
266
267config LOGITECH_FF
268	bool "Logitech force feedback support"
269	depends on HID_LOGITECH
270	select INPUT_FF_MEMLESS
271	help
272	  Say Y here if you have one of these devices:
273	  - Logitech WingMan Cordless RumblePad
274	  - Logitech WingMan Cordless RumblePad 2
275	  - Logitech WingMan Force 3D
276	  - Logitech Formula Force EX
277	  - Logitech WingMan Formula Force GP
278	  - Logitech MOMO Force wheel
279
280	  and if you want to enable force feedback for them.
281	  Note: if you say N here, this device will still be supported, but without
282	  force feedback.
283
284config LOGIRUMBLEPAD2_FF
285	bool "Logitech RumblePad/Rumblepad 2 force feedback support"
286	depends on HID_LOGITECH
287	select INPUT_FF_MEMLESS
288	help
289	  Say Y here if you want to enable force feedback support for Logitech
290	  RumblePad and Rumblepad 2 devices.
291
292config LOGIG940_FF
293	bool "Logitech Flight System G940 force feedback support"
294	depends on HID_LOGITECH
295	select INPUT_FF_MEMLESS
296	help
297	  Say Y here if you want to enable force feedback support for Logitech
298	  Flight System G940 devices.
299
300config LOGIWHEELS_FF
301	bool "Logitech wheels configuration and force feedback support"
302	depends on HID_LOGITECH
303	select INPUT_FF_MEMLESS
304	default LOGITECH_FF
305	help
306	  Say Y here if you want to enable force feedback and range setting
307	  support for following Logitech wheels:
308	  - Logitech Driving Force
309	  - Logitech Driving Force Pro
310	  - Logitech Driving Force GT
311	  - Logitech G25
312	  - Logitech G27
313	  - Logitech MOMO/MOMO 2
314	  - Logitech Formula Force EX
315
316config HID_MAGICMOUSE
317	tristate "Apple MagicMouse multi-touch support"
318	depends on BT_HIDP
319	---help---
320	Support for the Apple Magic Mouse multi-touch.
321
322	Say Y here if you want support for the multi-touch features of the
323	Apple Wireless "Magic" Mouse.
324
325config HID_MICROSOFT
326	tristate "Microsoft non-fully HID-compliant devices" if EXPERT
327	depends on USB_HID
328	default !EXPERT
329	---help---
330	Support for Microsoft devices that are not fully compliant with HID standard.
331
332config HID_MONTEREY
333	tristate "Monterey Genius KB29E keyboard" if EXPERT
334	depends on USB_HID
335	default !EXPERT
336	---help---
337	Support for Monterey Genius KB29E.
338
339config HID_MULTITOUCH
340	tristate "HID Multitouch panels"
341	depends on USB_HID
342	---help---
343	  Generic support for HID multitouch panels.
344
345	  Say Y here if you have one of the following devices:
346	  - 3M PCT touch screens
347	  - ActionStar dual touch panels
348	  - Atmel panels
349	  - Cando dual touch panels
350	  - Chunghwa panels
351	  - CVTouch panels
352	  - Cypress TrueTouch panels
353	  - Elo TouchSystems IntelliTouch Plus panels
354	  - GeneralTouch 'Sensing Win7-TwoFinger' panels
355	  - GoodTouch panels
356	  - Hanvon dual touch panels
357	  - Ilitek dual touch panels
358	  - IrTouch Infrared USB panels
359	  - LG Display panels (Dell ST2220Tc)
360	  - Lumio CrystalTouch panels
361	  - MosArt dual-touch panels
362	  - Panasonic multitouch panels
363	  - PenMount dual touch panels
364	  - Perixx Peripad 701 touchpad
365	  - PixArt optical touch screen
366	  - Pixcir dual touch panels
367	  - Quanta panels
368	  - eGalax dual-touch panels, including the Joojoo and Wetab tablets
369	  - Stantum multitouch panels
370	  - Touch International Panels
371	  - Unitec Panels
372	  - XAT optical touch panels
373	  - Xiroku optical touch panels
374
375	  If unsure, say N.
376
377	  To compile this driver as a module, choose M here: the
378	  module will be called hid-multitouch.
379
380config HID_NTRIG
381	tristate "N-Trig touch screen"
382	depends on USB_HID
383	---help---
384	Support for N-Trig touch screen.
385
386config HID_ORTEK
387	tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad"
388	depends on USB_HID
389	---help---
390	There are certain devices which have LogicalMaximum wrong in the keyboard
391	usage page of their report descriptor. The most prevailing ones so far
392	are manufactured by Ortek, thus the name of the driver. Currently
393	supported devices by this driver are
394
395	   - Ortek PKB-1700
396	   - Ortek WKB-2000
397	   - Skycable wireless presenter
398
399config HID_PANTHERLORD
400	tristate "Pantherlord/GreenAsia game controller"
401	depends on USB_HID
402	---help---
403	  Say Y here if you have a PantherLord/GreenAsia based game controller
404	  or adapter.
405
406config PANTHERLORD_FF
407	bool "Pantherlord force feedback support"
408	depends on HID_PANTHERLORD
409	select INPUT_FF_MEMLESS
410	---help---
411	  Say Y here if you have a PantherLord/GreenAsia based game controller
412	  or adapter and want to enable force feedback support for it.
413
414config HID_PETALYNX
415	tristate "Petalynx Maxter remote control"
416	depends on USB_HID
417	---help---
418	Support for Petalynx Maxter remote control.
419
420config HID_PICOLCD
421	tristate "PicoLCD (graphic version)"
422	depends on USB_HID
423	---help---
424	  This provides support for Minibox PicoLCD devices, currently
425	  only the graphical ones are supported.
426
427	  This includes support for the following device features:
428	  - Keypad
429	  - Switching between Firmware and Flash mode
430	  - EEProm / Flash access     (via debugfs)
431	  Features selectively enabled:
432	  - Framebuffer for monochrome 256x64 display
433	  - Backlight control
434	  - Contrast control
435	  - General purpose outputs
436	  Features that are not (yet) supported:
437	  - IR
438
439config HID_PICOLCD_FB
440	bool "Framebuffer support" if EXPERT
441	default !EXPERT
442	depends on HID_PICOLCD
443	depends on HID_PICOLCD=FB || FB=y
444	select FB_DEFERRED_IO
445	select FB_SYS_FILLRECT
446	select FB_SYS_COPYAREA
447	select FB_SYS_IMAGEBLIT
448	select FB_SYS_FOPS
449	---help---
450	  Provide access to PicoLCD's 256x64 monochrome display via a
451	  frambuffer device.
452
453config HID_PICOLCD_BACKLIGHT
454	bool "Backlight control" if EXPERT
455	default !EXPERT
456	depends on HID_PICOLCD
457	depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y
458	---help---
459	  Provide access to PicoLCD's backlight control via backlight
460	  class.
461
462config HID_PICOLCD_LCD
463	bool "Contrast control" if EXPERT
464	default !EXPERT
465	depends on HID_PICOLCD
466	depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y
467	---help---
468	  Provide access to PicoLCD's LCD contrast via lcd class.
469
470config HID_PICOLCD_LEDS
471	bool "GPO via leds class" if EXPERT
472	default !EXPERT
473	depends on HID_PICOLCD
474	depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y
475	---help---
476	  Provide access to PicoLCD's GPO pins via leds class.
477
478config HID_PRIMAX
479	tristate "Primax non-fully HID-compliant devices"
480	depends on USB_HID
481	---help---
482	Support for Primax devices that are not fully compliant with the
483	HID standard.
484
485config HID_ROCCAT
486	tristate "Roccat device support"
487	depends on USB_HID
488	---help---
489	Support for Roccat devices.
490	Say Y here if you have a Roccat mouse or keyboard and want
491	support for its special functionalities.
492
493config HID_SAITEK
494	tristate "Saitek non-fully HID-compliant devices"
495	depends on USB_HID
496	---help---
497	Support for Saitek devices that are not fully compliant with the
498	HID standard.
499
500	Currently only supports the PS1000 controller.
501
502config HID_SAMSUNG
503	tristate "Samsung InfraRed remote control or keyboards"
504	depends on USB_HID
505	---help---
506	Support for Samsung InfraRed remote control or keyboards.
507
508config HID_SONY
509	tristate "Sony PS3 controller"
510	depends on USB_HID
511	---help---
512	Support for Sony PS3 controller.
513
514config HID_SPEEDLINK
515	tristate "Speedlink VAD Cezanne mouse support"
516	depends on USB_HID
517	---help---
518	Support for Speedlink Vicious and Divine Cezanne mouse.
519
520config HID_SUNPLUS
521	tristate "Sunplus wireless desktop"
522	depends on USB_HID
523	---help---
524	Support for Sunplus wireless desktop.
525
526config HID_GREENASIA
527	tristate "GreenAsia (Product ID 0x12) game controller support"
528	depends on USB_HID
529	---help---
530	  Say Y here if you have a GreenAsia (Product ID 0x12) based game
531	  controller or adapter.
532
533config GREENASIA_FF
534	bool "GreenAsia (Product ID 0x12) force feedback support"
535	depends on HID_GREENASIA
536	select INPUT_FF_MEMLESS
537	---help---
538	Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
539	(like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
540	and want to enable force feedback support for it.
541
542config HID_HYPERV_MOUSE
543	tristate "Microsoft Hyper-V mouse driver"
544	depends on HYPERV
545	---help---
546	Select this option to enable the Hyper-V mouse driver.
547
548config HID_SMARTJOYPLUS
549	tristate "SmartJoy PLUS PS2/USB adapter support"
550	depends on USB_HID
551	---help---
552	Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box,
553	Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro.
554
555	Note that DDR (Dance Dance Revolution) mode is not supported, nor
556	is pressure sensitive buttons on the pro models.
557
558config SMARTJOYPLUS_FF
559	bool "SmartJoy PLUS PS2/USB adapter force feedback support"
560	depends on HID_SMARTJOYPLUS
561	select INPUT_FF_MEMLESS
562	---help---
563	Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
564	enable force feedback support for it.
565
566config HID_TIVO
567	tristate "TiVo Slide Bluetooth remote control support"
568	depends on (USB_HID || BT_HIDP)
569	---help---
570	Say Y if you have a TiVo Slide Bluetooth remote control.
571
572config HID_TOPSEED
573	tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
574	depends on USB_HID
575	---help---
576	Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
577	CLLRCMCE remote control.
578
579config HID_THRUSTMASTER
580	tristate "ThrustMaster devices support"
581	depends on USB_HID
582	---help---
583	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
584	  a THRUSTMASTER Ferrari GT Rumble Wheel.
585
586config THRUSTMASTER_FF
587	bool "ThrustMaster devices force feedback support"
588	depends on HID_THRUSTMASTER
589	select INPUT_FF_MEMLESS
590	---help---
591	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
592	  a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
593	  Rumble Force or Force Feedback Wheel.
594
595config HID_WACOM
596	tristate "Wacom Bluetooth devices support"
597	depends on BT_HIDP
598	---help---
599	Support for Wacom Graphire Bluetooth tablet.
600
601config HID_WACOM_POWER_SUPPLY
602	bool "Wacom Bluetooth devices power supply status support"
603	depends on HID_WACOM
604	select POWER_SUPPLY
605	---help---
606	  Say Y here if you want to enable power supply status monitoring for
607	  Wacom Bluetooth devices.
608
609config HID_WIIMOTE
610	tristate "Nintendo Wii Remote support"
611	depends on BT_HIDP
612	depends on LEDS_CLASS
613	select POWER_SUPPLY
614	select INPUT_FF_MEMLESS
615	---help---
616	Support for the Nintendo Wii Remote bluetooth device.
617
618config HID_WIIMOTE_EXT
619	bool "Nintendo Wii Remote Extension support"
620	depends on HID_WIIMOTE
621	default HID_WIIMOTE
622	---help---
623	Support for extension controllers of the Nintendo Wii Remote. Say yes
624	here if you want to use the Nintendo Motion+, Nunchuck or Classic
625	extension controllers with your Wii Remote.
626
627config HID_ZEROPLUS
628	tristate "Zeroplus based game controller support"
629	depends on USB_HID
630	---help---
631	  Say Y here if you have a Zeroplus based game controller.
632
633config ZEROPLUS_FF
634	bool "Zeroplus based game controller force feedback support"
635	depends on HID_ZEROPLUS
636	select INPUT_FF_MEMLESS
637	---help---
638	  Say Y here if you have a Zeroplus based game controller and want
639	  to have force feedback support for it.
640
641config HID_ZYDACRON
642	tristate "Zydacron remote control support"
643	depends on USB_HID
644	---help---
645	Support for Zydacron remote control.
646
647endmenu
648
649endif # HID_SUPPORT
650