1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 21da177e4SLinus Torvalds# 31da177e4SLinus Torvalds# Input device configuration 41da177e4SLinus Torvalds# 51da177e4SLinus Torvalds 61da177e4SLinus Torvaldsmenu "Input device support" 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 19ec15872dSMauro Carvalho Chehab More information is available: <file:Documentation/input/input.rst> 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 28f60c8ba7SSamuel Thibaultconfig INPUT_LEDS 29f60c8ba7SSamuel Thibault tristate "Export input device LEDs in sysfs" 30f60c8ba7SSamuel Thibault depends on LEDS_CLASS 31f60c8ba7SSamuel Thibault default INPUT 32f60c8ba7SSamuel Thibault help 33f60c8ba7SSamuel Thibault Say Y here if you would like to export LEDs on input devices 34f60c8ba7SSamuel Thibault as standard LED class devices in sysfs. 35f60c8ba7SSamuel Thibault 36f60c8ba7SSamuel Thibault If unsure, say Y. 37f60c8ba7SSamuel Thibault 38f60c8ba7SSamuel Thibault To compile this driver as a module, choose M here: the 39f60c8ba7SSamuel Thibault module will be called input-leds. 40f60c8ba7SSamuel 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 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 8045ceaf14SStephen Boydconfig INPUT_VIVALDIFMAP 8145ceaf14SStephen Boyd tristate 8245ceaf14SStephen Boyd help 8345ceaf14SStephen Boyd ChromeOS Vivaldi keymap support library. This is a hidden 8445ceaf14SStephen Boyd option so that drivers can use common code to parse and 8545ceaf14SStephen Boyd expose the vivaldi function row keymap. 8645ceaf14SStephen Boyd 871da177e4SLinus Torvaldscomment "Userland interfaces" 881da177e4SLinus Torvalds 891da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV 90dfaaed08STom Gundersen tristate "Mouse interface" 9136203c4fSDmitry Torokhov help 921da177e4SLinus Torvalds Say Y here if you want your mouse to be accessible as char devices 931da177e4SLinus Torvalds 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an 941da177e4SLinus Torvalds emulated IntelliMouse Explorer PS/2 mouse. That way, all user space 951da177e4SLinus Torvalds programs (including SVGAlib, GPM and X) will be able to use your 961da177e4SLinus Torvalds mouse. 971da177e4SLinus Torvalds 981da177e4SLinus Torvalds If unsure, say Y. 991da177e4SLinus Torvalds 1001da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 1011da177e4SLinus Torvalds module will be called mousedev. 1021da177e4SLinus Torvalds 1031da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_PSAUX 1041da177e4SLinus Torvalds bool "Provide legacy /dev/psaux device" 1051da177e4SLinus Torvalds depends on INPUT_MOUSEDEV 10636203c4fSDmitry Torokhov help 1071da177e4SLinus Torvalds Say Y here if you want your mouse also be accessible as char device 1081da177e4SLinus Torvalds 10:1 - /dev/psaux. The data available through /dev/psaux is exactly 1091da177e4SLinus Torvalds the same as the data from /dev/input/mice. 1101da177e4SLinus Torvalds 1111da177e4SLinus Torvalds If unsure, say Y. 1121da177e4SLinus Torvalds 1131da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_X 1141da177e4SLinus Torvalds int "Horizontal screen resolution" 1151da177e4SLinus Torvalds depends on INPUT_MOUSEDEV 1161da177e4SLinus Torvalds default "1024" 1171da177e4SLinus Torvalds help 1181da177e4SLinus Torvalds If you're using a digitizer, or a graphic tablet, and want to use 1191da177e4SLinus Torvalds it as a mouse then the mousedev driver needs to know the X window 1201da177e4SLinus Torvalds screen resolution you are using to correctly scale the data. If 1211da177e4SLinus Torvalds you're not using a digitizer, this value is ignored. 1221da177e4SLinus Torvalds 1231da177e4SLinus Torvaldsconfig INPUT_MOUSEDEV_SCREEN_Y 1241da177e4SLinus Torvalds int "Vertical screen resolution" 1251da177e4SLinus Torvalds depends on INPUT_MOUSEDEV 1261da177e4SLinus Torvalds default "768" 1271da177e4SLinus Torvalds help 1281da177e4SLinus Torvalds If you're using a digitizer, or a graphic tablet, and want to use 1291da177e4SLinus Torvalds it as a mouse then the mousedev driver needs to know the X window 1301da177e4SLinus Torvalds screen resolution you are using to correctly scale the data. If 1311da177e4SLinus Torvalds you're not using a digitizer, this value is ignored. 1321da177e4SLinus Torvalds 1331da177e4SLinus Torvaldsconfig INPUT_JOYDEV 1341da177e4SLinus Torvalds tristate "Joystick interface" 13536203c4fSDmitry Torokhov help 1361da177e4SLinus Torvalds Say Y here if you want your joystick or gamepad to be 1371da177e4SLinus Torvalds accessible as char device 13:0+ - /dev/input/jsX device. 1381da177e4SLinus Torvalds 1391da177e4SLinus Torvalds If unsure, say Y. 1401da177e4SLinus Torvalds 141ec15872dSMauro Carvalho Chehab More information is available: <file:Documentation/input/joydev/joystick.rst> 1421da177e4SLinus Torvalds 1431da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 1441da177e4SLinus Torvalds module will be called joydev. 1451da177e4SLinus Torvalds 1461da177e4SLinus Torvaldsconfig INPUT_EVDEV 1471da177e4SLinus Torvalds tristate "Event interface" 1481da177e4SLinus Torvalds help 1491da177e4SLinus Torvalds Say Y here if you want your input device events be accessible 1501da177e4SLinus Torvalds under char device 13:64+ - /dev/input/eventX in a generic way. 1511da177e4SLinus Torvalds 1521da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 1531da177e4SLinus Torvalds module will be called evdev. 1541da177e4SLinus Torvalds 1551da177e4SLinus Torvaldsconfig INPUT_EVBUG 1561da177e4SLinus Torvalds tristate "Event debugging" 15736203c4fSDmitry Torokhov help 1581da177e4SLinus Torvalds Say Y here if you have a problem with the input subsystem and 1591da177e4SLinus Torvalds want all events (keypresses, mouse movements), to be output to 1601da177e4SLinus Torvalds the system log. While this is useful for debugging, it's also 1611da177e4SLinus Torvalds a security threat - your keypresses include your passwords, of 1621da177e4SLinus Torvalds course. 1631da177e4SLinus Torvalds 1641da177e4SLinus Torvalds If unsure, say N. 1651da177e4SLinus Torvalds 1661da177e4SLinus Torvalds To compile this driver as a module, choose M here: the 1671da177e4SLinus Torvalds module will be called evbug. 1681da177e4SLinus Torvalds 169fdefcbddSJavier Martinez Canillasconfig INPUT_KUNIT_TEST 170fdefcbddSJavier Martinez Canillas tristate "KUnit tests for Input" if !KUNIT_ALL_TESTS 171*e0f41f83SGeert Uytterhoeven depends on INPUT && KUNIT 172fdefcbddSJavier Martinez Canillas default KUNIT_ALL_TESTS 173fdefcbddSJavier Martinez Canillas help 174fdefcbddSJavier Martinez Canillas Say Y here if you want to build the KUnit tests for the input 175fdefcbddSJavier Martinez Canillas subsystem. 176fdefcbddSJavier Martinez Canillas 177fdefcbddSJavier Martinez Canillas If in doubt, say "N". 178fdefcbddSJavier Martinez Canillas 179e17bb1deSRichard Purdieconfig INPUT_APMPOWER 1806a108a14SDavid Rientjes tristate "Input Power Event -> APM Bridge" if EXPERT 181e17bb1deSRichard Purdie depends on INPUT && APM_EMULATION 18236203c4fSDmitry Torokhov help 183e17bb1deSRichard Purdie Say Y here if you want suspend key events to trigger a user 184e17bb1deSRichard Purdie requested suspend through APM. This is useful on embedded 185692105b8SMatt LaPlante systems where such behaviour is desired without userspace 186e17bb1deSRichard Purdie interaction. If unsure, say N. 187e17bb1deSRichard Purdie 188e17bb1deSRichard Purdie To compile this driver as a module, choose M here: the 189e17bb1deSRichard Purdie module will be called apm-power. 190e17bb1deSRichard Purdie 1911da177e4SLinus Torvaldscomment "Input Device Drivers" 1921da177e4SLinus Torvalds 1931da177e4SLinus Torvaldssource "drivers/input/keyboard/Kconfig" 1941da177e4SLinus Torvalds 1951da177e4SLinus Torvaldssource "drivers/input/mouse/Kconfig" 1961da177e4SLinus Torvalds 1971da177e4SLinus Torvaldssource "drivers/input/joystick/Kconfig" 1981da177e4SLinus Torvalds 1994104d13fSDmitry Torokhovsource "drivers/input/tablet/Kconfig" 2004104d13fSDmitry Torokhov 2011da177e4SLinus Torvaldssource "drivers/input/touchscreen/Kconfig" 2021da177e4SLinus Torvalds 2031da177e4SLinus Torvaldssource "drivers/input/misc/Kconfig" 2041da177e4SLinus Torvalds 2052b6a321dSAndrew Duggansource "drivers/input/rmi4/Kconfig" 2062b6a321dSAndrew Duggan 2071da177e4SLinus Torvaldsendif 2081da177e4SLinus Torvalds 2091da177e4SLinus Torvaldsmenu "Hardware I/O ports" 2101da177e4SLinus Torvalds 2111da177e4SLinus Torvaldssource "drivers/input/serio/Kconfig" 2121da177e4SLinus Torvalds 2131da177e4SLinus Torvaldssource "drivers/input/gameport/Kconfig" 2141da177e4SLinus Torvalds 2151da177e4SLinus Torvaldsendmenu 2161da177e4SLinus Torvalds 2171da177e4SLinus Torvaldsendmenu 2181da177e4SLinus Torvalds 219