xref: /linux-6.15/drivers/input/Kconfig (revision f60c8ba7)
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
28*f60c8ba7SSamuel Thibaultconfig INPUT_LEDS
29*f60c8ba7SSamuel Thibault	tristate "Export input device LEDs in sysfs"
30*f60c8ba7SSamuel Thibault	depends on LEDS_CLASS
31*f60c8ba7SSamuel Thibault	default INPUT
32*f60c8ba7SSamuel Thibault	help
33*f60c8ba7SSamuel Thibault	  Say Y here if you would like to export LEDs on input devices
34*f60c8ba7SSamuel Thibault	  as standard LED class devices in sysfs.
35*f60c8ba7SSamuel Thibault
36*f60c8ba7SSamuel Thibault	  If unsure, say Y.
37*f60c8ba7SSamuel Thibault
38*f60c8ba7SSamuel Thibault	  To compile this driver as a module, choose M here: the
39*f60c8ba7SSamuel Thibault	  module will be called input-leds.
40*f60c8ba7SSamuel Thibault
417d928a2bSAnssi Hannulaconfig INPUT_FF_MEMLESS
427d928a2bSAnssi Hannula	tristate "Support for memoryless force-feedback devices"
4336203c4fSDmitry Torokhov	help
447d928a2bSAnssi Hannula	  Say Y here if you have memoryless force-feedback input device
457d928a2bSAnssi Hannula	  such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual
467d928a2bSAnssi Hannula	  Power 2, or similar. You will also need to enable hardware-specific
477d928a2bSAnssi Hannula	  driver.
487d928a2bSAnssi Hannula
497d928a2bSAnssi Hannula	  If unsure, say N.
507d928a2bSAnssi Hannula
517d928a2bSAnssi Hannula	  To compile this driver as a module, choose M here: the
527d928a2bSAnssi Hannula	  module will be called ff-memless.
537d928a2bSAnssi Hannula
54893e7c2dSDmitry Torokhovconfig INPUT_POLLDEV
55893e7c2dSDmitry Torokhov	tristate "Polled input device skeleton"
56893e7c2dSDmitry Torokhov	help
57893e7c2dSDmitry Torokhov	  Say Y here if you are using a driver for an input
58893e7c2dSDmitry Torokhov	  device that periodically polls hardware state. This
59893e7c2dSDmitry Torokhov	  option is only useful for out-of-tree drivers since
60893e7c2dSDmitry Torokhov	  in-tree drivers select it automatically.
61893e7c2dSDmitry Torokhov
62893e7c2dSDmitry Torokhov	  If unsure, say N.
63893e7c2dSDmitry Torokhov
64893e7c2dSDmitry Torokhov	  To compile this driver as a module, choose M here: the
65893e7c2dSDmitry Torokhov	  module will be called input-polldev.
66893e7c2dSDmitry Torokhov
6736203c4fSDmitry Torokhovconfig INPUT_SPARSEKMAP
6836203c4fSDmitry Torokhov	tristate "Sparse keymap support library"
6936203c4fSDmitry Torokhov	help
7036203c4fSDmitry Torokhov	  Say Y here if you are using a driver for an input
7136203c4fSDmitry Torokhov	  device that uses sparse keymap. This option is only
7236203c4fSDmitry Torokhov	  useful for out-of-tree drivers since in-tree drivers
7336203c4fSDmitry Torokhov	  select it automatically.
7436203c4fSDmitry Torokhov
7536203c4fSDmitry Torokhov	  If unsure, say N.
7636203c4fSDmitry Torokhov
7736203c4fSDmitry Torokhov	  To compile this driver as a module, choose M here: the
7836203c4fSDmitry Torokhov	  module will be called sparse-keymap.
7936203c4fSDmitry Torokhov
801932811fSDmitry Torokhovconfig INPUT_MATRIXKMAP
811932811fSDmitry Torokhov	tristate "Matrix keymap support library"
821932811fSDmitry Torokhov	help
831932811fSDmitry Torokhov	  Say Y here if you are using a driver for an input
841932811fSDmitry Torokhov	  device that uses matrix keymap. This option is only
851932811fSDmitry Torokhov	  useful for out-of-tree drivers since in-tree drivers
861932811fSDmitry Torokhov	  select it automatically.
871932811fSDmitry Torokhov
881932811fSDmitry Torokhov	  If unsure, say N.
891932811fSDmitry Torokhov
901932811fSDmitry Torokhov	  To compile this driver as a module, choose M here: the
911932811fSDmitry Torokhov	  module will be called matrix-keymap.
921932811fSDmitry Torokhov
931da177e4SLinus Torvaldscomment "Userland interfaces"
941da177e4SLinus Torvalds
951da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV
96dfaaed08STom Gundersen	tristate "Mouse interface"
971da177e4SLinus Torvalds	default y
9836203c4fSDmitry Torokhov	help
991da177e4SLinus Torvalds	  Say Y here if you want your mouse to be accessible as char devices
1001da177e4SLinus Torvalds	  13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an
1011da177e4SLinus Torvalds	  emulated IntelliMouse Explorer PS/2 mouse. That way, all user space
1021da177e4SLinus Torvalds	  programs (including SVGAlib, GPM and X) will be able to use your
1031da177e4SLinus Torvalds	  mouse.
1041da177e4SLinus Torvalds
1051da177e4SLinus Torvalds	  If unsure, say Y.
1061da177e4SLinus Torvalds
1071da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1081da177e4SLinus Torvalds	  module will be called mousedev.
1091da177e4SLinus Torvalds
1101da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_PSAUX
1111da177e4SLinus Torvalds	bool "Provide legacy /dev/psaux device"
1121da177e4SLinus Torvalds	default y
1131da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
11436203c4fSDmitry Torokhov	help
1151da177e4SLinus Torvalds	  Say Y here if you want your mouse also be accessible as char device
1161da177e4SLinus Torvalds	  10:1 - /dev/psaux. The data available through /dev/psaux is exactly
1171da177e4SLinus Torvalds	  the same as the data from /dev/input/mice.
1181da177e4SLinus Torvalds
1191da177e4SLinus Torvalds	  If unsure, say Y.
1201da177e4SLinus Torvalds
1211da177e4SLinus Torvalds
1221da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_X
1231da177e4SLinus Torvalds	int "Horizontal screen resolution"
1241da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
1251da177e4SLinus Torvalds	default "1024"
1261da177e4SLinus Torvalds	help
1271da177e4SLinus Torvalds	  If you're using a digitizer, or a graphic tablet, and want to use
1281da177e4SLinus Torvalds	  it as a mouse then the mousedev driver needs to know the X window
1291da177e4SLinus Torvalds	  screen resolution you are using to correctly scale the data. If
1301da177e4SLinus Torvalds	  you're not using a digitizer, this value is ignored.
1311da177e4SLinus Torvalds
1321da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_Y
1331da177e4SLinus Torvalds	int "Vertical screen resolution"
1341da177e4SLinus Torvalds	depends on INPUT_MOUSEDEV
1351da177e4SLinus Torvalds	default "768"
1361da177e4SLinus Torvalds	help
1371da177e4SLinus Torvalds	  If you're using a digitizer, or a graphic tablet, and want to use
1381da177e4SLinus Torvalds	  it as a mouse then the mousedev driver needs to know the X window
1391da177e4SLinus Torvalds	  screen resolution you are using to correctly scale the data. If
1401da177e4SLinus Torvalds	  you're not using a digitizer, this value is ignored.
1411da177e4SLinus Torvalds
1421da177e4SLinus Torvaldsconfig INPUT_JOYDEV
1431da177e4SLinus Torvalds	tristate "Joystick interface"
14436203c4fSDmitry Torokhov	help
1451da177e4SLinus Torvalds	  Say Y here if you want your joystick or gamepad to be
1461da177e4SLinus Torvalds	  accessible as char device 13:0+ - /dev/input/jsX device.
1471da177e4SLinus Torvalds
1481da177e4SLinus Torvalds	  If unsure, say Y.
1491da177e4SLinus Torvalds
1501da177e4SLinus Torvalds	  More information is available: <file:Documentation/input/joystick.txt>
1511da177e4SLinus Torvalds
1521da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1531da177e4SLinus Torvalds	  module will be called joydev.
1541da177e4SLinus Torvalds
1551da177e4SLinus Torvaldsconfig INPUT_EVDEV
1561da177e4SLinus Torvalds	tristate "Event interface"
1571da177e4SLinus Torvalds	help
1581da177e4SLinus Torvalds	  Say Y here if you want your input device events be accessible
1591da177e4SLinus Torvalds	  under char device 13:64+ - /dev/input/eventX in a generic way.
1601da177e4SLinus Torvalds
1611da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1621da177e4SLinus Torvalds	  module will be called evdev.
1631da177e4SLinus Torvalds
1641da177e4SLinus Torvaldsconfig INPUT_EVBUG
1651da177e4SLinus Torvalds	tristate "Event debugging"
16636203c4fSDmitry Torokhov	help
1671da177e4SLinus Torvalds	  Say Y here if you have a problem with the input subsystem and
1681da177e4SLinus Torvalds	  want all events (keypresses, mouse movements), to be output to
1691da177e4SLinus Torvalds	  the system log. While this is useful for debugging, it's also
1701da177e4SLinus Torvalds	  a security threat - your keypresses include your passwords, of
1711da177e4SLinus Torvalds	  course.
1721da177e4SLinus Torvalds
1731da177e4SLinus Torvalds	  If unsure, say N.
1741da177e4SLinus Torvalds
1751da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the
1761da177e4SLinus Torvalds	  module will be called evbug.
1771da177e4SLinus Torvalds
178e17bb1deSRichard Purdieconfig INPUT_APMPOWER
1796a108a14SDavid Rientjes	tristate "Input Power Event -> APM Bridge" if EXPERT
180e17bb1deSRichard Purdie	depends on INPUT && APM_EMULATION
18136203c4fSDmitry Torokhov	help
182e17bb1deSRichard Purdie	  Say Y here if you want suspend key events to trigger a user
183e17bb1deSRichard Purdie	  requested suspend through APM. This is useful on embedded
184692105b8SMatt LaPlante	  systems where such behaviour is desired without userspace
185e17bb1deSRichard Purdie	  interaction. If unsure, say N.
186e17bb1deSRichard Purdie
187e17bb1deSRichard Purdie	  To compile this driver as a module, choose M here: the
188e17bb1deSRichard Purdie	  module will be called apm-power.
189e17bb1deSRichard Purdie
1901da177e4SLinus Torvaldscomment "Input Device Drivers"
1911da177e4SLinus Torvalds
1921da177e4SLinus Torvaldssource "drivers/input/keyboard/Kconfig"
1931da177e4SLinus Torvalds
1941da177e4SLinus Torvaldssource "drivers/input/mouse/Kconfig"
1951da177e4SLinus Torvalds
1961da177e4SLinus Torvaldssource "drivers/input/joystick/Kconfig"
1971da177e4SLinus Torvalds
1984104d13fSDmitry Torokhovsource "drivers/input/tablet/Kconfig"
1994104d13fSDmitry Torokhov
2001da177e4SLinus Torvaldssource "drivers/input/touchscreen/Kconfig"
2011da177e4SLinus Torvalds
2021da177e4SLinus Torvaldssource "drivers/input/misc/Kconfig"
2031da177e4SLinus Torvalds
2041da177e4SLinus Torvaldsendif
2051da177e4SLinus Torvalds
2061da177e4SLinus Torvaldsmenu "Hardware I/O ports"
2071da177e4SLinus Torvalds
2081da177e4SLinus Torvaldssource "drivers/input/serio/Kconfig"
2091da177e4SLinus Torvalds
2101da177e4SLinus Torvaldssource "drivers/input/gameport/Kconfig"
2111da177e4SLinus Torvalds
2121da177e4SLinus Torvaldsendmenu
2131da177e4SLinus Torvalds
2141da177e4SLinus Torvaldsendmenu
2151da177e4SLinus Torvalds
216