xref: /linux-6.15/drivers/input/Kconfig (revision dfaaed08)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# Input device configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
51da177e4SLinus Torvaldsmenu "Input device support"
6d722260dSHeiko Carstens	depends on !UML
71da177e4SLinus Torvalds
81da177e4SLinus Torvaldsconfig INPUT
96a108a14SDavid Rientjes	tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT
101da177e4SLinus Torvalds	default y
1136203c4fSDmitry Torokhov	help
121da177e4SLinus Torvalds	  Say Y here if you have any input device (mouse, keyboard, tablet,
131da177e4SLinus Torvalds	  joystick, steering wheel ...) connected to your system and want
141da177e4SLinus Torvalds	  it to be available to applications. This includes standard PS/2
151da177e4SLinus Torvalds	  keyboard and mouse.
161da177e4SLinus Torvalds
171da177e4SLinus Torvalds	  Say N here if you have a headless (no monitor, no keyboard) system.
181da177e4SLinus Torvalds
191da177e4SLinus Torvalds	  More information is available: <file:Documentation/input/input.txt>
201da177e4SLinus Torvalds
211da177e4SLinus Torvalds	  If unsure, say Y.
221da177e4SLinus Torvalds
231da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
241da177e4SLinus Torvalds	  module will be called input.
251da177e4SLinus Torvalds
261da177e4SLinus Torvaldsif INPUT
271da177e4SLinus Torvalds
287d928a2bSAnssi Hannulaconfig INPUT_FF_MEMLESS
297d928a2bSAnssi Hannula	tristate "Support for memoryless force-feedback devices"
3036203c4fSDmitry Torokhov	help
317d928a2bSAnssi Hannula	  Say Y here if you have memoryless force-feedback input device
327d928a2bSAnssi Hannula	  such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
337d928a2bSAnssi Hannula	  Power 2, or similar. You will also need to enable hardware-specific
347d928a2bSAnssi Hannula	  driver.
357d928a2bSAnssi Hannula
367d928a2bSAnssi Hannula	  If unsure, say N.
377d928a2bSAnssi Hannula
387d928a2bSAnssi Hannula	  To compile this driver as a module, choose M here: the
397d928a2bSAnssi Hannula	  module will be called ff-memless.
407d928a2bSAnssi Hannula
41893e7c2dSDmitry Torokhovconfig INPUT_POLLDEV
42893e7c2dSDmitry Torokhov	tristate "Polled input device skeleton"
43893e7c2dSDmitry Torokhov	help
44893e7c2dSDmitry Torokhov	  Say Y here if you are using a driver for an input
45893e7c2dSDmitry Torokhov	  device that periodically polls hardware state. This
46893e7c2dSDmitry Torokhov	  option is only useful for out-of-tree drivers since
47893e7c2dSDmitry Torokhov	  in-tree drivers select it automatically.
48893e7c2dSDmitry Torokhov
49893e7c2dSDmitry Torokhov	  If unsure, say N.
50893e7c2dSDmitry Torokhov
51893e7c2dSDmitry Torokhov	  To compile this driver as a module, choose M here: the
52893e7c2dSDmitry Torokhov	  module will be called input-polldev.
53893e7c2dSDmitry Torokhov
5436203c4fSDmitry Torokhovconfig INPUT_SPARSEKMAP
5536203c4fSDmitry Torokhov	tristate "Sparse keymap support library"
5636203c4fSDmitry Torokhov	help
5736203c4fSDmitry Torokhov	  Say Y here if you are using a driver for an input
5836203c4fSDmitry Torokhov	  device that uses sparse keymap. This option is only
5936203c4fSDmitry Torokhov	  useful for out-of-tree drivers since in-tree drivers
6036203c4fSDmitry Torokhov	  select it automatically.
6136203c4fSDmitry Torokhov
6236203c4fSDmitry Torokhov	  If unsure, say N.
6336203c4fSDmitry Torokhov
6436203c4fSDmitry Torokhov	  To compile this driver as a module, choose M here: the
6536203c4fSDmitry Torokhov	  module will be called sparse-keymap.
6636203c4fSDmitry Torokhov
671932811fSDmitry Torokhovconfig INPUT_MATRIXKMAP
681932811fSDmitry Torokhov	tristate "Matrix keymap support library"
691932811fSDmitry Torokhov	help
701932811fSDmitry Torokhov	  Say Y here if you are using a driver for an input
711932811fSDmitry Torokhov	  device that uses matrix keymap. This option is only
721932811fSDmitry Torokhov	  useful for out-of-tree drivers since in-tree drivers
731932811fSDmitry Torokhov	  select it automatically.
741932811fSDmitry Torokhov
751932811fSDmitry Torokhov	  If unsure, say N.
761932811fSDmitry Torokhov
771932811fSDmitry Torokhov	  To compile this driver as a module, choose M here: the
781932811fSDmitry Torokhov	  module will be called matrix-keymap.
791932811fSDmitry Torokhov
801da177e4SLinus Torvaldscomment "Userland interfaces"
811da177e4SLinus Torvalds
821da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV
83*dfaaed08STom Gundersen	tristate "Mouse interface"
841da177e4SLinus Torvalds	default y
8536203c4fSDmitry Torokhov	help
861da177e4SLinus Torvalds	  Say Y here if you want your mouse to be accessible as char devices
871da177e4SLinus Torvalds	  13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
881da177e4SLinus Torvalds	  emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
891da177e4SLinus Torvalds	  programs (including SVGAlib, GPM and X) will be able to use your
901da177e4SLinus Torvalds	  mouse.
911da177e4SLinus Torvalds
921da177e4SLinus Torvalds	  If unsure, say Y.
931da177e4SLinus Torvalds
941da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
951da177e4SLinus Torvalds	  module will be called mousedev.
961da177e4SLinus Torvalds
971da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_PSAUX
981da177e4SLinus Torvalds	bool "Provide legacy /dev/psaux device"
991da177e4SLinus Torvalds	default y
1001da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
10136203c4fSDmitry Torokhov	help
1021da177e4SLinus Torvalds	  Say Y here if you want your mouse also be accessible as char device
1031da177e4SLinus Torvalds	  10:1 - /dev/psaux. The data available through /dev/psaux is exactly
1041da177e4SLinus Torvalds	  the same as the data from /dev/input/mice.
1051da177e4SLinus Torvalds
1061da177e4SLinus Torvalds	  If unsure, say Y.
1071da177e4SLinus Torvalds
1081da177e4SLinus Torvalds
1091da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_X
1101da177e4SLinus Torvalds	int "Horizontal screen resolution"
1111da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
1121da177e4SLinus Torvalds	default "1024"
1131da177e4SLinus Torvalds	help
1141da177e4SLinus Torvalds	  If you're using a digitizer, or a graphic tablet, and want to use
1151da177e4SLinus Torvalds	  it as a mouse then the mousedev driver needs to know the X window
1161da177e4SLinus Torvalds	  screen resolution you are using to correctly scale the data. If
1171da177e4SLinus Torvalds	  you're not using a digitizer, this value is ignored.
1181da177e4SLinus Torvalds
1191da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_Y
1201da177e4SLinus Torvalds	int "Vertical screen resolution"
1211da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
1221da177e4SLinus Torvalds	default "768"
1231da177e4SLinus Torvalds	help
1241da177e4SLinus Torvalds	  If you're using a digitizer, or a graphic tablet, and want to use
1251da177e4SLinus Torvalds	  it as a mouse then the mousedev driver needs to know the X window
1261da177e4SLinus Torvalds	  screen resolution you are using to correctly scale the data. If
1271da177e4SLinus Torvalds	  you're not using a digitizer, this value is ignored.
1281da177e4SLinus Torvalds
1291da177e4SLinus Torvaldsconfig INPUT_JOYDEV
1301da177e4SLinus Torvalds	tristate "Joystick interface"
13136203c4fSDmitry Torokhov	help
1321da177e4SLinus Torvalds	  Say Y here if you want your joystick or gamepad to be
1331da177e4SLinus Torvalds	  accessible as char device 13:0+ - /dev/input/jsX device.
1341da177e4SLinus Torvalds
1351da177e4SLinus Torvalds	  If unsure, say Y.
1361da177e4SLinus Torvalds
1371da177e4SLinus Torvalds	  More information is available: <file:Documentation/input/joystick.txt>
1381da177e4SLinus Torvalds
1391da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1401da177e4SLinus Torvalds	  module will be called joydev.
1411da177e4SLinus Torvalds
1421da177e4SLinus Torvaldsconfig INPUT_EVDEV
1431da177e4SLinus Torvalds	tristate "Event interface"
1441da177e4SLinus Torvalds	help
1451da177e4SLinus Torvalds	  Say Y here if you want your input device events be accessible
1461da177e4SLinus Torvalds	  under char device 13:64+ - /dev/input/eventX in a generic way.
1471da177e4SLinus Torvalds
1481da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1491da177e4SLinus Torvalds	  module will be called evdev.
1501da177e4SLinus Torvalds
1511da177e4SLinus Torvaldsconfig INPUT_EVBUG
1521da177e4SLinus Torvalds	tristate "Event debugging"
15336203c4fSDmitry Torokhov	help
1541da177e4SLinus Torvalds	  Say Y here if you have a problem with the input subsystem and
1551da177e4SLinus Torvalds	  want all events (keypresses, mouse movements), to be output to
1561da177e4SLinus Torvalds	  the system log. While this is useful for debugging, it's also
1571da177e4SLinus Torvalds	  a security threat - your keypresses include your passwords, of
1581da177e4SLinus Torvalds	  course.
1591da177e4SLinus Torvalds
1601da177e4SLinus Torvalds	  If unsure, say N.
1611da177e4SLinus Torvalds
1621da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1631da177e4SLinus Torvalds	  module will be called evbug.
1641da177e4SLinus Torvalds
165e17bb1deSRichard Purdieconfig INPUT_APMPOWER
1666a108a14SDavid Rientjes	tristate "Input Power Event -> APM Bridge" if EXPERT
167e17bb1deSRichard Purdie	depends on INPUT && APM_EMULATION
16836203c4fSDmitry Torokhov	help
169e17bb1deSRichard Purdie	  Say Y here if you want suspend key events to trigger a user
170e17bb1deSRichard Purdie	  requested suspend through APM. This is useful on embedded
171692105b8SMatt LaPlante	  systems where such behaviour is desired without userspace
172e17bb1deSRichard Purdie	  interaction. If unsure, say N.
173e17bb1deSRichard Purdie
174e17bb1deSRichard Purdie	  To compile this driver as a module, choose M here: the
175e17bb1deSRichard Purdie	  module will be called apm-power.
176e17bb1deSRichard Purdie
1771da177e4SLinus Torvaldscomment "Input Device Drivers"
1781da177e4SLinus Torvalds
1791da177e4SLinus Torvaldssource "drivers/input/keyboard/Kconfig"
1801da177e4SLinus Torvalds
1811da177e4SLinus Torvaldssource "drivers/input/mouse/Kconfig"
1821da177e4SLinus Torvalds
1831da177e4SLinus Torvaldssource "drivers/input/joystick/Kconfig"
1841da177e4SLinus Torvalds
1854104d13fSDmitry Torokhovsource "drivers/input/tablet/Kconfig"
1864104d13fSDmitry Torokhov
1871da177e4SLinus Torvaldssource "drivers/input/touchscreen/Kconfig"
1881da177e4SLinus Torvalds
1891da177e4SLinus Torvaldssource "drivers/input/misc/Kconfig"
1901da177e4SLinus Torvalds
1911da177e4SLinus Torvaldsendif
1921da177e4SLinus Torvalds
1931da177e4SLinus Torvaldsmenu "Hardware I/O ports"
1941da177e4SLinus Torvalds
1951da177e4SLinus Torvaldssource "drivers/input/serio/Kconfig"
1961da177e4SLinus Torvalds
1971da177e4SLinus Torvaldssource "drivers/input/gameport/Kconfig"
1981da177e4SLinus Torvalds
1991da177e4SLinus Torvaldsendmenu
2001da177e4SLinus Torvalds
2011da177e4SLinus Torvaldsendmenu
2021da177e4SLinus Torvalds
203