xref: /linux/drivers/hid/Kconfig (revision 26b0d14106954ae46d2f4f7eec3481828a210f7d)
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
390	  If unsure, say N.
391
392	  To compile this driver as a module, choose M here: the
393	  module will be called hid-multitouch.
394
395config HID_NTRIG
396	tristate "N-Trig touch screen"
397	depends on USB_HID
398	---help---
399	Support for N-Trig touch screen.
400
401config HID_ORTEK
402	tristate "Ortek PKB-1700/WKB-2000/Skycable wireless keyboard and mouse trackpad"
403	depends on USB_HID
404	---help---
405	There are certain devices which have LogicalMaximum wrong in the keyboard
406	usage page of their report descriptor. The most prevailing ones so far
407	are manufactured by Ortek, thus the name of the driver. Currently
408	supported devices by this driver are
409
410	   - Ortek PKB-1700
411	   - Ortek WKB-2000
412	   - Skycable wireless presenter
413
414config HID_PANTHERLORD
415	tristate "Pantherlord/GreenAsia game controller"
416	depends on USB_HID
417	---help---
418	  Say Y here if you have a PantherLord/GreenAsia based game controller
419	  or adapter.
420
421config PANTHERLORD_FF
422	bool "Pantherlord force feedback support"
423	depends on HID_PANTHERLORD
424	select INPUT_FF_MEMLESS
425	---help---
426	  Say Y here if you have a PantherLord/GreenAsia based game controller
427	  or adapter and want to enable force feedback support for it.
428
429config HID_PETALYNX
430	tristate "Petalynx Maxter remote control"
431	depends on USB_HID
432	---help---
433	Support for Petalynx Maxter remote control.
434
435config HID_PICOLCD
436	tristate "PicoLCD (graphic version)"
437	depends on USB_HID
438	---help---
439	  This provides support for Minibox PicoLCD devices, currently
440	  only the graphical ones are supported.
441
442	  This includes support for the following device features:
443	  - Keypad
444	  - Switching between Firmware and Flash mode
445	  - EEProm / Flash access     (via debugfs)
446	  Features selectively enabled:
447	  - Framebuffer for monochrome 256x64 display
448	  - Backlight control
449	  - Contrast control
450	  - General purpose outputs
451	  Features that are not (yet) supported:
452	  - IR
453
454config HID_PICOLCD_FB
455	bool "Framebuffer support" if EXPERT
456	default !EXPERT
457	depends on HID_PICOLCD
458	depends on HID_PICOLCD=FB || FB=y
459	select FB_DEFERRED_IO
460	select FB_SYS_FILLRECT
461	select FB_SYS_COPYAREA
462	select FB_SYS_IMAGEBLIT
463	select FB_SYS_FOPS
464	---help---
465	  Provide access to PicoLCD's 256x64 monochrome display via a
466	  framebuffer device.
467
468config HID_PICOLCD_BACKLIGHT
469	bool "Backlight control" if EXPERT
470	default !EXPERT
471	depends on HID_PICOLCD
472	depends on HID_PICOLCD=BACKLIGHT_CLASS_DEVICE || BACKLIGHT_CLASS_DEVICE=y
473	---help---
474	  Provide access to PicoLCD's backlight control via backlight
475	  class.
476
477config HID_PICOLCD_LCD
478	bool "Contrast control" if EXPERT
479	default !EXPERT
480	depends on HID_PICOLCD
481	depends on HID_PICOLCD=LCD_CLASS_DEVICE || LCD_CLASS_DEVICE=y
482	---help---
483	  Provide access to PicoLCD's LCD contrast via lcd class.
484
485config HID_PICOLCD_LEDS
486	bool "GPO via leds class" if EXPERT
487	default !EXPERT
488	depends on HID_PICOLCD
489	depends on HID_PICOLCD=LEDS_CLASS || LEDS_CLASS=y
490	---help---
491	  Provide access to PicoLCD's GPO pins via leds class.
492
493config HID_PRIMAX
494	tristate "Primax non-fully HID-compliant devices"
495	depends on USB_HID
496	---help---
497	Support for Primax devices that are not fully compliant with the
498	HID standard.
499
500config HID_ROCCAT
501	tristate "Roccat device support"
502	depends on USB_HID
503	---help---
504	Support for Roccat devices.
505	Say Y here if you have a Roccat mouse or keyboard and want
506	support for its special functionalities.
507
508config HID_SAITEK
509	tristate "Saitek non-fully HID-compliant devices"
510	depends on USB_HID
511	---help---
512	Support for Saitek devices that are not fully compliant with the
513	HID standard.
514
515	Currently only supports the PS1000 controller.
516
517config HID_SAMSUNG
518	tristate "Samsung InfraRed remote control or keyboards"
519	depends on USB_HID
520	---help---
521	Support for Samsung InfraRed remote control or keyboards.
522
523config HID_SONY
524	tristate "Sony PS3 controller"
525	depends on USB_HID
526	---help---
527	Support for Sony PS3 controller.
528
529config HID_SPEEDLINK
530	tristate "Speedlink VAD Cezanne mouse support"
531	depends on USB_HID
532	---help---
533	Support for Speedlink Vicious and Divine Cezanne mouse.
534
535config HID_SUNPLUS
536	tristate "Sunplus wireless desktop"
537	depends on USB_HID
538	---help---
539	Support for Sunplus wireless desktop.
540
541config HID_GREENASIA
542	tristate "GreenAsia (Product ID 0x12) game controller support"
543	depends on USB_HID
544	---help---
545	  Say Y here if you have a GreenAsia (Product ID 0x12) based game
546	  controller or adapter.
547
548config GREENASIA_FF
549	bool "GreenAsia (Product ID 0x12) force feedback support"
550	depends on HID_GREENASIA
551	select INPUT_FF_MEMLESS
552	---help---
553	Say Y here if you have a GreenAsia (Product ID 0x12) based game controller
554	(like MANTA Warrior MM816 and SpeedLink Strike2 SL-6635) or adapter
555	and want to enable force feedback support for it.
556
557config HID_HYPERV_MOUSE
558	tristate "Microsoft Hyper-V mouse driver"
559	depends on HYPERV
560	---help---
561	Select this option to enable the Hyper-V mouse driver.
562
563config HID_SMARTJOYPLUS
564	tristate "SmartJoy PLUS PS2/USB adapter support"
565	depends on USB_HID
566	---help---
567	Support for SmartJoy PLUS PS2/USB adapter, Super Dual Box,
568	Super Joy Box 3 Pro, Super Dual Box Pro, and Super Joy Box 5 Pro.
569
570	Note that DDR (Dance Dance Revolution) mode is not supported, nor
571	is pressure sensitive buttons on the pro models.
572
573config SMARTJOYPLUS_FF
574	bool "SmartJoy PLUS PS2/USB adapter force feedback support"
575	depends on HID_SMARTJOYPLUS
576	select INPUT_FF_MEMLESS
577	---help---
578	Say Y here if you have a SmartJoy PLUS PS2/USB adapter and want to
579	enable force feedback support for it.
580
581config HID_TIVO
582	tristate "TiVo Slide Bluetooth remote control support"
583	depends on (USB_HID || BT_HIDP)
584	---help---
585	Say Y if you have a TiVo Slide Bluetooth remote control.
586
587config HID_TOPSEED
588	tristate "TopSeed Cyberlink, BTC Emprex, Conceptronic remote control support"
589	depends on USB_HID
590	---help---
591	Say Y if you have a TopSeed Cyberlink or BTC Emprex or Conceptronic
592	CLLRCMCE remote control.
593
594config HID_THRUSTMASTER
595	tristate "ThrustMaster devices support"
596	depends on USB_HID
597	---help---
598	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
599	  a THRUSTMASTER Ferrari GT Rumble Wheel.
600
601config THRUSTMASTER_FF
602	bool "ThrustMaster devices force feedback support"
603	depends on HID_THRUSTMASTER
604	select INPUT_FF_MEMLESS
605	---help---
606	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
607	  a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
608	  Rumble Force or Force Feedback Wheel.
609
610config HID_WACOM
611	tristate "Wacom Bluetooth devices support"
612	depends on BT_HIDP
613	depends on LEDS_CLASS
614	select POWER_SUPPLY
615	---help---
616	Support for Wacom Graphire Bluetooth and Intuos4 WL tablets.
617
618config HID_WIIMOTE
619	tristate "Nintendo Wii Remote support"
620	depends on BT_HIDP
621	depends on LEDS_CLASS
622	select POWER_SUPPLY
623	select INPUT_FF_MEMLESS
624	---help---
625	Support for the Nintendo Wii Remote bluetooth device.
626
627config HID_WIIMOTE_EXT
628	bool "Nintendo Wii Remote Extension support"
629	depends on HID_WIIMOTE
630	default HID_WIIMOTE
631	---help---
632	Support for extension controllers of the Nintendo Wii Remote. Say yes
633	here if you want to use the Nintendo Motion+, Nunchuck or Classic
634	extension controllers with your Wii Remote.
635
636config HID_ZEROPLUS
637	tristate "Zeroplus based game controller support"
638	depends on USB_HID
639	---help---
640	  Say Y here if you have a Zeroplus based game controller.
641
642config ZEROPLUS_FF
643	bool "Zeroplus based game controller force feedback support"
644	depends on HID_ZEROPLUS
645	select INPUT_FF_MEMLESS
646	---help---
647	  Say Y here if you have a Zeroplus based game controller and want
648	  to have force feedback support for it.
649
650config HID_ZYDACRON
651	tristate "Zydacron remote control support"
652	depends on USB_HID
653	---help---
654	Support for Zydacron remote control.
655
656endmenu
657
658endif # HID
659
660source "drivers/hid/usbhid/Kconfig"
661
662endmenu
663