Kconfig 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Input core configuration
  4. #
  5. config SERIO
  6. tristate "Serial I/O support"
  7. default y
  8. help
  9. Say Yes here if you have any input device that uses serial I/O to
  10. communicate with the system. This includes the
  11. * standard AT keyboard and PS/2 mouse *
  12. as well as serial mice, Sun keyboards, some joysticks and 6dof
  13. devices and more.
  14. If unsure, say Y.
  15. To compile this driver as a module, choose M here: the
  16. module will be called serio.
  17. config ARCH_MIGHT_HAVE_PC_SERIO
  18. bool
  19. help
  20. Select this config option from the architecture Kconfig if
  21. the architecture might use a PC serio device (i8042) to
  22. communicate with keyboard, mouse, etc.
  23. if SERIO
  24. config SERIO_I8042
  25. tristate "i8042 PC Keyboard controller"
  26. default y
  27. depends on ARCH_MIGHT_HAVE_PC_SERIO
  28. help
  29. i8042 is the chip over which the standard AT keyboard and PS/2
  30. mouse are connected to the computer. If you use these devices,
  31. you'll need to say Y here.
  32. If unsure, say Y.
  33. To compile this driver as a module, choose M here: the
  34. module will be called i8042.
  35. config SERIO_SERPORT
  36. tristate "Serial port line discipline"
  37. default y
  38. depends on TTY
  39. help
  40. Say Y here if you plan to use an input device (mouse, joystick,
  41. tablet, 6dof) that communicates over the RS232 serial (COM) port.
  42. More information is available: <file:Documentation/input/input.rst>
  43. If unsure, say Y.
  44. To compile this driver as a module, choose M here: the
  45. module will be called serport.
  46. config SERIO_CT82C710
  47. tristate "ct82c710 Aux port controller"
  48. depends on X86
  49. help
  50. Say Y here if you have a Texas Instruments TravelMate notebook
  51. equipped with the ct82c710 chip and want to use a mouse connected
  52. to the "QuickPort".
  53. If unsure, say N.
  54. To compile this driver as a module, choose M here: the
  55. module will be called ct82c710.
  56. config SERIO_Q40KBD
  57. tristate "Q40 keyboard controller"
  58. depends on Q40
  59. config SERIO_PARKBD
  60. tristate "Parallel port keyboard adapter"
  61. depends on PARPORT
  62. help
  63. Say Y here if you built a simple parallel port adapter to attach
  64. an additional AT keyboard, XT keyboard or PS/2 mouse.
  65. More information is available: <file:Documentation/input/input.rst>
  66. If unsure, say N.
  67. To compile this driver as a module, choose M here: the
  68. module will be called parkbd.
  69. config SERIO_RPCKBD
  70. tristate "Acorn RiscPC keyboard controller"
  71. depends on ARCH_ACORN
  72. default y
  73. help
  74. Say Y here if you have the Acorn RiscPC and want to use an AT
  75. keyboard connected to its keyboard controller.
  76. To compile this driver as a module, choose M here: the
  77. module will be called rpckbd.
  78. config SERIO_AMBAKMI
  79. tristate "AMBA KMI keyboard controller"
  80. depends on ARM_AMBA
  81. config SERIO_SA1111
  82. tristate "Intel SA1111 keyboard controller"
  83. depends on SA1111
  84. config SERIO_GSCPS2
  85. tristate "HP GSC PS/2 keyboard and PS/2 mouse controller"
  86. depends on GSC
  87. default y
  88. help
  89. This driver provides support for the PS/2 ports on PA-RISC machines
  90. over which HP PS/2 keyboards and PS/2 mice may be connected.
  91. If you use these devices, you'll need to say Y here.
  92. It's safe to enable this driver, so if unsure, say Y.
  93. To compile this driver as a module, choose M here: the
  94. module will be called gscps2.
  95. config HP_SDC
  96. tristate "HP System Device Controller i8042 Support"
  97. depends on (GSC || HP300) && SERIO
  98. default y
  99. help
  100. This option enables support for the "System Device
  101. Controller", an i8042 carrying microcode to manage a
  102. few miscellaneous devices on some Hewlett Packard systems.
  103. The SDC itself contains a 10ms resolution timer/clock capable
  104. of delivering interrupts on a periodic and one-shot basis.
  105. The SDC may also be connected to a battery-backed real-time
  106. clock, a basic audio waveform generator, and an HP-HIL Master
  107. Link Controller serving up to seven input devices.
  108. By itself this option is rather useless, but enabling it will
  109. enable selection of drivers for the abovementioned devices.
  110. It is, however, incompatible with the old, reliable HIL keyboard
  111. driver, and the new HIL driver is experimental, so if you plan
  112. to use a HIL keyboard as your primary keyboard, you may wish
  113. to keep using that driver until the new HIL drivers have had
  114. more testing.
  115. config HIL_MLC
  116. tristate "HIL MLC Support (needed for HIL input devices)"
  117. depends on HP_SDC
  118. config SERIO_PCIPS2
  119. tristate "PCI PS/2 keyboard and PS/2 mouse controller"
  120. depends on PCI
  121. depends on HAS_IOPORT
  122. help
  123. Say Y here if you have a Mobility Docking station with PS/2
  124. keyboard and mice ports.
  125. To compile this driver as a module, choose M here: the
  126. module will be called pcips2.
  127. config SERIO_MACEPS2
  128. tristate "SGI O2 MACE PS/2 controller"
  129. depends on SGI_IP32
  130. help
  131. Say Y here if you have SGI O2 workstation and want to use its
  132. PS/2 ports.
  133. To compile this driver as a module, choose M here: the
  134. module will be called maceps2.
  135. config SERIO_SGI_IOC3
  136. tristate "SGI IOC3 PS/2 controller"
  137. depends on SGI_MFD_IOC3
  138. help
  139. Say Y here if you have an SGI Onyx2, SGI Octane or IOC3 PCI card
  140. and you want to attach and use a keyboard, mouse, or both.
  141. To compile this driver as a module, choose M here: the
  142. module will be called ioc3kbd.
  143. config SERIO_LIBPS2
  144. tristate "PS/2 driver library"
  145. depends on SERIO_I8042 || SERIO_I8042=n
  146. help
  147. Say Y here if you are using a driver for device connected
  148. to a PS/2 port, such as PS/2 mouse or standard AT keyboard.
  149. To compile this driver as a module, choose M here: the
  150. module will be called libps2.
  151. config SERIO_RAW
  152. tristate "Raw access to serio ports"
  153. help
  154. Say Y here if you want to have raw access to serio ports, such as
  155. AUX ports on i8042 keyboard controller. Each serio port that is
  156. bound to this driver will be accessible via a char device with
  157. major 10 and dynamically allocated minor. The driver will try
  158. allocating minor 1 (that historically corresponds to /dev/psaux)
  159. first. To bind this driver to a serio port use sysfs interface:
  160. echo -n "serio_raw" > /sys/bus/serio/devices/serioX/drvctl
  161. To compile this driver as a module, choose M here: the
  162. module will be called serio_raw.
  163. config SERIO_XILINX_XPS_PS2
  164. tristate "Xilinx XPS PS/2 Controller Support"
  165. depends on PPC || MICROBLAZE
  166. help
  167. This driver supports XPS PS/2 IP from the Xilinx EDK on
  168. PowerPC platform.
  169. To compile this driver as a module, choose M here: the
  170. module will be called xilinx_ps2.
  171. config SERIO_ALTERA_PS2
  172. tristate "Altera UP PS/2 controller"
  173. depends on HAS_IOMEM
  174. help
  175. Say Y here if you have Altera University Program PS/2 ports.
  176. To compile this driver as a module, choose M here: the
  177. module will be called altera_ps2.
  178. config SERIO_AMS_DELTA
  179. tristate "Amstrad Delta (E3) mailboard support"
  180. depends on MACH_AMS_DELTA
  181. default y
  182. help
  183. Say Y here if you have an E3 and want to use its mailboard,
  184. or any standard AT keyboard connected to the mailboard port.
  185. When used for the E3 mailboard, a non-standard key table
  186. must be loaded from userspace, possibly using udev extras
  187. provided keymap helper utility.
  188. To compile this driver as a module, choose M here;
  189. the module will be called ams_delta_serio.
  190. config SERIO_PS2MULT
  191. tristate "TQC PS/2 multiplexer"
  192. help
  193. Say Y here if you have the PS/2 line multiplexer like the one
  194. present on TQC boards.
  195. To compile this driver as a module, choose M here: the
  196. module will be called ps2mult.
  197. config SERIO_ARC_PS2
  198. tristate "ARC PS/2 support"
  199. depends on HAS_IOMEM
  200. help
  201. Say Y here if you have an ARC FPGA platform with a PS/2
  202. controller in it.
  203. To compile this driver as a module, choose M here; the module
  204. will be called arc_ps2.
  205. config SERIO_APBPS2
  206. tristate "GRLIB APBPS2 PS/2 keyboard/mouse controller"
  207. depends on OF && HAS_IOMEM
  208. help
  209. Say Y here if you want support for GRLIB APBPS2 peripherals used
  210. to connect to PS/2 keyboard and/or mouse.
  211. To compile this driver as a module, choose M here: the module will
  212. be called apbps2.
  213. config SERIO_OLPC_APSP
  214. tristate "OLPC AP-SP input support"
  215. depends on ARCH_MMP || COMPILE_TEST
  216. help
  217. Say Y here if you want support for the keyboard and touchpad included
  218. in the OLPC XO-1.75 and XO-4 laptops.
  219. To compile this driver as a module, choose M here: the module will
  220. be called olpc_apsp.
  221. config HYPERV_KEYBOARD
  222. tristate "Microsoft Synthetic Keyboard driver"
  223. depends on HYPERV_VMBUS
  224. default HYPERV_VMBUS
  225. help
  226. Select this option to enable the Hyper-V Keyboard driver.
  227. To compile this driver as a module, choose M here: the module will
  228. be called hyperv_keyboard.
  229. config SERIO_SUN4I_PS2
  230. tristate "Allwinner A10 PS/2 controller support"
  231. depends on ARCH_SUNXI || COMPILE_TEST
  232. help
  233. This selects support for the PS/2 Host Controller on
  234. Allwinner A10.
  235. To compile this driver as a module, choose M here: the
  236. module will be called sun4i-ps2.
  237. config SERIO_GPIO_PS2
  238. tristate "GPIO PS/2 bit banging driver"
  239. depends on GPIOLIB
  240. help
  241. Say Y here if you want PS/2 bit banging support via GPIO.
  242. To compile this driver as a module, choose M here: the
  243. module will be called ps2-gpio.
  244. If you are unsure, say N.
  245. config USERIO
  246. tristate "User space serio port driver support"
  247. help
  248. Say Y here if you want to support user level drivers for serio
  249. subsystem accessible under char device 10:240 - /dev/userio. Using
  250. this facility userspace programs can implement serio ports that
  251. will be used by the standard in-kernel serio consumer drivers,
  252. such as psmouse and atkbd.
  253. To compile this driver as a module, choose M here: the module will be
  254. called userio.
  255. If you are unsure, say N.
  256. endif