18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci# 38c2ecf20Sopenharmony_ci# Input device configuration 48c2ecf20Sopenharmony_ci# 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_cimenu "Input device support" 78c2ecf20Sopenharmony_ci depends on !UML 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ciconfig INPUT 108c2ecf20Sopenharmony_ci tristate "Generic input layer (needed for keyboard, mouse, ...)" if EXPERT 118c2ecf20Sopenharmony_ci default y 128c2ecf20Sopenharmony_ci help 138c2ecf20Sopenharmony_ci Say Y here if you have any input device (mouse, keyboard, tablet, 148c2ecf20Sopenharmony_ci joystick, steering wheel ...) connected to your system and want 158c2ecf20Sopenharmony_ci it to be available to applications. This includes standard PS/2 168c2ecf20Sopenharmony_ci keyboard and mouse. 178c2ecf20Sopenharmony_ci 188c2ecf20Sopenharmony_ci Say N here if you have a headless (no monitor, no keyboard) system. 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci More information is available: <file:Documentation/input/input.rst> 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ci If unsure, say Y. 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 258c2ecf20Sopenharmony_ci module will be called input. 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ciif INPUT 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciconfig INPUT_LEDS 308c2ecf20Sopenharmony_ci tristate "Export input device LEDs in sysfs" 318c2ecf20Sopenharmony_ci depends on LEDS_CLASS 328c2ecf20Sopenharmony_ci default INPUT 338c2ecf20Sopenharmony_ci help 348c2ecf20Sopenharmony_ci Say Y here if you would like to export LEDs on input devices 358c2ecf20Sopenharmony_ci as standard LED class devices in sysfs. 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci If unsure, say Y. 388c2ecf20Sopenharmony_ci 398c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 408c2ecf20Sopenharmony_ci module will be called input-leds. 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ciconfig INPUT_FF_MEMLESS 438c2ecf20Sopenharmony_ci tristate "Support for memoryless force-feedback devices" 448c2ecf20Sopenharmony_ci help 458c2ecf20Sopenharmony_ci Say Y here if you have memoryless force-feedback input device 468c2ecf20Sopenharmony_ci such as Logitech WingMan Force 3D, ThrustMaster FireStorm Dual 478c2ecf20Sopenharmony_ci Power 2, or similar. You will also need to enable hardware-specific 488c2ecf20Sopenharmony_ci driver. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci If unsure, say N. 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 538c2ecf20Sopenharmony_ci module will be called ff-memless. 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ciconfig INPUT_POLLDEV 568c2ecf20Sopenharmony_ci tristate "Polled input device skeleton" 578c2ecf20Sopenharmony_ci help 588c2ecf20Sopenharmony_ci Say Y here if you are using a driver for an input 598c2ecf20Sopenharmony_ci device that periodically polls hardware state. This 608c2ecf20Sopenharmony_ci option is only useful for out-of-tree drivers since 618c2ecf20Sopenharmony_ci in-tree drivers select it automatically. 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci If unsure, say N. 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 668c2ecf20Sopenharmony_ci module will be called input-polldev. 678c2ecf20Sopenharmony_ci 688c2ecf20Sopenharmony_ciconfig INPUT_SPARSEKMAP 698c2ecf20Sopenharmony_ci tristate "Sparse keymap support library" 708c2ecf20Sopenharmony_ci help 718c2ecf20Sopenharmony_ci Say Y here if you are using a driver for an input 728c2ecf20Sopenharmony_ci device that uses sparse keymap. This option is only 738c2ecf20Sopenharmony_ci useful for out-of-tree drivers since in-tree drivers 748c2ecf20Sopenharmony_ci select it automatically. 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci If unsure, say N. 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 798c2ecf20Sopenharmony_ci module will be called sparse-keymap. 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ciconfig INPUT_MATRIXKMAP 828c2ecf20Sopenharmony_ci tristate "Matrix keymap support library" 838c2ecf20Sopenharmony_ci help 848c2ecf20Sopenharmony_ci Say Y here if you are using a driver for an input 858c2ecf20Sopenharmony_ci device that uses matrix keymap. This option is only 868c2ecf20Sopenharmony_ci useful for out-of-tree drivers since in-tree drivers 878c2ecf20Sopenharmony_ci select it automatically. 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci If unsure, say N. 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 928c2ecf20Sopenharmony_ci module will be called matrix-keymap. 938c2ecf20Sopenharmony_ci 948c2ecf20Sopenharmony_cicomment "Userland interfaces" 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ciconfig INPUT_MOUSEDEV 978c2ecf20Sopenharmony_ci tristate "Mouse interface" 988c2ecf20Sopenharmony_ci help 998c2ecf20Sopenharmony_ci Say Y here if you want your mouse to be accessible as char devices 1008c2ecf20Sopenharmony_ci 13:32+ - /dev/input/mouseX and 13:63 - /dev/input/mice as an 1018c2ecf20Sopenharmony_ci emulated IntelliMouse Explorer PS/2 mouse. That way, all user space 1028c2ecf20Sopenharmony_ci programs (including SVGAlib, GPM and X) will be able to use your 1038c2ecf20Sopenharmony_ci mouse. 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ci If unsure, say Y. 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1088c2ecf20Sopenharmony_ci module will be called mousedev. 1098c2ecf20Sopenharmony_ci 1108c2ecf20Sopenharmony_ciconfig INPUT_MOUSEDEV_PSAUX 1118c2ecf20Sopenharmony_ci bool "Provide legacy /dev/psaux device" 1128c2ecf20Sopenharmony_ci depends on INPUT_MOUSEDEV 1138c2ecf20Sopenharmony_ci help 1148c2ecf20Sopenharmony_ci Say Y here if you want your mouse also be accessible as char device 1158c2ecf20Sopenharmony_ci 10:1 - /dev/psaux. The data available through /dev/psaux is exactly 1168c2ecf20Sopenharmony_ci the same as the data from /dev/input/mice. 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci If unsure, say Y. 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ciconfig INPUT_MOUSEDEV_SCREEN_X 1218c2ecf20Sopenharmony_ci int "Horizontal screen resolution" 1228c2ecf20Sopenharmony_ci depends on INPUT_MOUSEDEV 1238c2ecf20Sopenharmony_ci default "1024" 1248c2ecf20Sopenharmony_ci help 1258c2ecf20Sopenharmony_ci If you're using a digitizer, or a graphic tablet, and want to use 1268c2ecf20Sopenharmony_ci it as a mouse then the mousedev driver needs to know the X window 1278c2ecf20Sopenharmony_ci screen resolution you are using to correctly scale the data. If 1288c2ecf20Sopenharmony_ci you're not using a digitizer, this value is ignored. 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ciconfig INPUT_MOUSEDEV_SCREEN_Y 1318c2ecf20Sopenharmony_ci int "Vertical screen resolution" 1328c2ecf20Sopenharmony_ci depends on INPUT_MOUSEDEV 1338c2ecf20Sopenharmony_ci default "768" 1348c2ecf20Sopenharmony_ci help 1358c2ecf20Sopenharmony_ci If you're using a digitizer, or a graphic tablet, and want to use 1368c2ecf20Sopenharmony_ci it as a mouse then the mousedev driver needs to know the X window 1378c2ecf20Sopenharmony_ci screen resolution you are using to correctly scale the data. If 1388c2ecf20Sopenharmony_ci you're not using a digitizer, this value is ignored. 1398c2ecf20Sopenharmony_ci 1408c2ecf20Sopenharmony_ciconfig INPUT_JOYDEV 1418c2ecf20Sopenharmony_ci tristate "Joystick interface" 1428c2ecf20Sopenharmony_ci help 1438c2ecf20Sopenharmony_ci Say Y here if you want your joystick or gamepad to be 1448c2ecf20Sopenharmony_ci accessible as char device 13:0+ - /dev/input/jsX device. 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci If unsure, say Y. 1478c2ecf20Sopenharmony_ci 1488c2ecf20Sopenharmony_ci More information is available: <file:Documentation/input/joydev/joystick.rst> 1498c2ecf20Sopenharmony_ci 1508c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1518c2ecf20Sopenharmony_ci module will be called joydev. 1528c2ecf20Sopenharmony_ci 1538c2ecf20Sopenharmony_ciconfig INPUT_EVDEV 1548c2ecf20Sopenharmony_ci tristate "Event interface" 1558c2ecf20Sopenharmony_ci help 1568c2ecf20Sopenharmony_ci Say Y here if you want your input device events be accessible 1578c2ecf20Sopenharmony_ci under char device 13:64+ - /dev/input/eventX in a generic way. 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1608c2ecf20Sopenharmony_ci module will be called evdev. 1618c2ecf20Sopenharmony_ci 1628c2ecf20Sopenharmony_ciconfig INPUT_EVBUG 1638c2ecf20Sopenharmony_ci tristate "Event debugging" 1648c2ecf20Sopenharmony_ci help 1658c2ecf20Sopenharmony_ci Say Y here if you have a problem with the input subsystem and 1668c2ecf20Sopenharmony_ci want all events (keypresses, mouse movements), to be output to 1678c2ecf20Sopenharmony_ci the system log. While this is useful for debugging, it's also 1688c2ecf20Sopenharmony_ci a security threat - your keypresses include your passwords, of 1698c2ecf20Sopenharmony_ci course. 1708c2ecf20Sopenharmony_ci 1718c2ecf20Sopenharmony_ci If unsure, say N. 1728c2ecf20Sopenharmony_ci 1738c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1748c2ecf20Sopenharmony_ci module will be called evbug. 1758c2ecf20Sopenharmony_ci 1768c2ecf20Sopenharmony_ciconfig INPUT_APMPOWER 1778c2ecf20Sopenharmony_ci tristate "Input Power Event -> APM Bridge" if EXPERT 1788c2ecf20Sopenharmony_ci depends on INPUT && APM_EMULATION 1798c2ecf20Sopenharmony_ci help 1808c2ecf20Sopenharmony_ci Say Y here if you want suspend key events to trigger a user 1818c2ecf20Sopenharmony_ci requested suspend through APM. This is useful on embedded 1828c2ecf20Sopenharmony_ci systems where such behaviour is desired without userspace 1838c2ecf20Sopenharmony_ci interaction. If unsure, say N. 1848c2ecf20Sopenharmony_ci 1858c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the 1868c2ecf20Sopenharmony_ci module will be called apm-power. 1878c2ecf20Sopenharmony_ci 1888c2ecf20Sopenharmony_cicomment "Input Device Drivers" 1898c2ecf20Sopenharmony_ci 1908c2ecf20Sopenharmony_cisource "drivers/input/keyboard/Kconfig" 1918c2ecf20Sopenharmony_ci 1928c2ecf20Sopenharmony_cisource "drivers/input/mouse/Kconfig" 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_cisource "drivers/input/joystick/Kconfig" 1958c2ecf20Sopenharmony_ci 1968c2ecf20Sopenharmony_cisource "drivers/input/tablet/Kconfig" 1978c2ecf20Sopenharmony_ci 1988c2ecf20Sopenharmony_cisource "drivers/input/touchscreen/Kconfig" 1998c2ecf20Sopenharmony_ci 2008c2ecf20Sopenharmony_cisource "drivers/input/misc/Kconfig" 2018c2ecf20Sopenharmony_ci 2028c2ecf20Sopenharmony_cisource "drivers/input/rmi4/Kconfig" 2038c2ecf20Sopenharmony_ci 2048c2ecf20Sopenharmony_ciendif 2058c2ecf20Sopenharmony_ci 2068c2ecf20Sopenharmony_cimenu "Hardware I/O ports" 2078c2ecf20Sopenharmony_ci 2088c2ecf20Sopenharmony_cisource "drivers/input/serio/Kconfig" 2098c2ecf20Sopenharmony_ci 2108c2ecf20Sopenharmony_cisource "drivers/input/gameport/Kconfig" 2118c2ecf20Sopenharmony_ci 2128c2ecf20Sopenharmony_ciendmenu 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ciendmenu 2158c2ecf20Sopenharmony_ci 216