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