Kconfig 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Mouse driver configuration
  4. #
  5. menuconfig INPUT_MOUSE
  6. bool "Mice"
  7. default y
  8. help
  9. Say Y here, and a list of supported mice will be displayed.
  10. This option doesn't affect the kernel.
  11. If unsure, say Y.
  12. if INPUT_MOUSE
  13. config MOUSE_PS2
  14. tristate "PS/2 mouse"
  15. default y
  16. select SERIO
  17. select SERIO_LIBPS2
  18. select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
  19. select SERIO_GSCPS2 if GSC
  20. help
  21. Say Y here if you have a PS/2 mouse connected to your system. This
  22. includes the standard 2 or 3-button PS/2 mouse, as well as PS/2
  23. mice with wheels and extra buttons, Microsoft, Logitech or Genius
  24. compatible.
  25. Synaptics, ALPS or Elantech TouchPad users might be interested
  26. in a specialized Xorg/XFree86 driver at:
  27. <http://w1.894.telia.com/~u89404340/touchpad/index.html>
  28. and a new version of GPM at:
  29. <http://www.geocities.com/dt_or/gpm/gpm.html>
  30. <http://xorg.freedesktop.org/archive/individual/driver/>
  31. to take advantage of the advanced features of the touchpad.
  32. If unsure, say Y.
  33. To compile this driver as a module, choose M here: the
  34. module will be called psmouse.
  35. config MOUSE_PS2_ALPS
  36. bool "ALPS PS/2 mouse protocol extension" if EXPERT
  37. default y
  38. depends on MOUSE_PS2
  39. help
  40. Say Y here if you have an ALPS PS/2 touchpad connected to
  41. your system.
  42. If unsure, say Y.
  43. config MOUSE_PS2_BYD
  44. bool "BYD PS/2 mouse protocol extension" if EXPERT
  45. default y
  46. depends on MOUSE_PS2
  47. help
  48. Say Y here if you have a BYD PS/2 touchpad connected to
  49. your system.
  50. If unsure, say Y.
  51. config MOUSE_PS2_LOGIPS2PP
  52. bool "Logitech PS/2++ mouse protocol extension" if EXPERT
  53. default y
  54. depends on MOUSE_PS2
  55. help
  56. Say Y here if you have a Logitech PS/2++ mouse connected to
  57. your system.
  58. If unsure, say Y.
  59. config MOUSE_PS2_SYNAPTICS
  60. bool "Synaptics PS/2 mouse protocol extension" if EXPERT
  61. default y
  62. depends on MOUSE_PS2
  63. help
  64. Say Y here if you have a Synaptics PS/2 TouchPad connected to
  65. your system.
  66. If unsure, say Y.
  67. config MOUSE_PS2_SYNAPTICS_SMBUS
  68. bool "Synaptics PS/2 SMbus companion" if EXPERT
  69. default y
  70. depends on MOUSE_PS2
  71. depends on I2C=y || I2C=MOUSE_PS2
  72. select MOUSE_PS2_SMBUS
  73. help
  74. Say Y here if you have a Synaptics RMI4 touchpad connected to
  75. to an SMBus, but enumerated through PS/2.
  76. If unsure, say Y.
  77. config MOUSE_PS2_CYPRESS
  78. bool "Cypress PS/2 mouse protocol extension" if EXPERT
  79. default y
  80. depends on MOUSE_PS2
  81. help
  82. Say Y here if you have a Cypress PS/2 Trackpad connected to
  83. your system.
  84. If unsure, say Y.
  85. config MOUSE_PS2_LIFEBOOK
  86. bool "Fujitsu Lifebook PS/2 mouse protocol extension" if EXPERT
  87. default y
  88. depends on MOUSE_PS2 && X86 && DMI
  89. help
  90. Say Y here if you have a Fujitsu B-series Lifebook PS/2
  91. TouchScreen connected to your system.
  92. If unsure, say Y.
  93. config MOUSE_PS2_TRACKPOINT
  94. bool "IBM Trackpoint PS/2 mouse protocol extension" if EXPERT
  95. default y
  96. depends on MOUSE_PS2
  97. help
  98. Say Y here if you have an IBM Trackpoint PS/2 mouse connected
  99. to your system.
  100. If unsure, say Y.
  101. config MOUSE_PS2_ELANTECH
  102. bool "Elantech PS/2 protocol extension"
  103. depends on MOUSE_PS2
  104. help
  105. Say Y here if you have an Elantech PS/2 touchpad connected
  106. to your system.
  107. This driver exposes some configuration registers via sysfs
  108. entries. For further information,
  109. see <file:Documentation/input/devices/elantech.rst>.
  110. If unsure, say N.
  111. config MOUSE_PS2_ELANTECH_SMBUS
  112. bool "Elantech PS/2 SMbus companion" if EXPERT
  113. default y
  114. depends on MOUSE_PS2 && MOUSE_PS2_ELANTECH
  115. depends on I2C=y || I2C=MOUSE_PS2
  116. select MOUSE_PS2_SMBUS
  117. help
  118. Say Y here if you have a Elantech touchpad connected to
  119. to an SMBus, but enumerated through PS/2.
  120. If unsure, say Y.
  121. config MOUSE_PS2_SENTELIC
  122. bool "Sentelic Finger Sensing Pad PS/2 protocol extension"
  123. depends on MOUSE_PS2
  124. help
  125. Say Y here if you have a laptop (such as MSI WIND Netbook)
  126. with Sentelic Finger Sensing Pad touchpad.
  127. If unsure, say N.
  128. config MOUSE_PS2_TOUCHKIT
  129. bool "eGalax TouchKit PS/2 protocol extension"
  130. depends on MOUSE_PS2
  131. help
  132. Say Y here if you have an eGalax TouchKit PS/2 touchscreen
  133. connected to your system.
  134. If unsure, say N.
  135. config MOUSE_PS2_OLPC
  136. bool "OLPC PS/2 mouse protocol extension"
  137. depends on MOUSE_PS2 && OLPC
  138. help
  139. Say Y here if you have an OLPC XO-1 laptop (with built-in
  140. PS/2 touchpad/tablet device). The manufacturer calls the
  141. touchpad an HGPK.
  142. If unsure, say N.
  143. config MOUSE_PS2_FOCALTECH
  144. bool "FocalTech PS/2 mouse protocol extension" if EXPERT
  145. default y
  146. depends on MOUSE_PS2
  147. help
  148. Say Y here if you have a FocalTech PS/2 TouchPad connected to
  149. your system.
  150. If unsure, say Y.
  151. config MOUSE_PS2_VMMOUSE
  152. bool "Virtual mouse (vmmouse)"
  153. depends on MOUSE_PS2 && X86 && HYPERVISOR_GUEST
  154. help
  155. Say Y here if you are running under control of VMware hypervisor
  156. (ESXi, Workstation or Fusion). Also make sure that when you enable
  157. this option, you remove the xf86-input-vmmouse user-space driver
  158. or upgrade it to at least xf86-input-vmmouse 13.1.0, which doesn't
  159. load in the presence of an in-kernel vmmouse driver.
  160. If unsure, say N.
  161. config MOUSE_PS2_SMBUS
  162. bool
  163. depends on MOUSE_PS2
  164. config MOUSE_SERIAL
  165. tristate "Serial mouse"
  166. select SERIO
  167. help
  168. Say Y here if you have a serial (RS-232, COM port) mouse connected
  169. to your system. This includes Sun, MouseSystems, Microsoft,
  170. Logitech and all other compatible serial mice.
  171. If unsure, say N.
  172. To compile this driver as a module, choose M here: the
  173. module will be called sermouse.
  174. config MOUSE_APPLETOUCH
  175. tristate "Apple USB Touchpad support"
  176. depends on USB_ARCH_HAS_HCD
  177. select USB
  178. help
  179. Say Y here if you want to use an Apple USB Touchpad.
  180. These are the touchpads that can be found on post-February 2005
  181. Apple Powerbooks (prior models have a Synaptics touchpad connected
  182. to the ADB bus).
  183. This driver provides a basic mouse driver but can be interfaced
  184. with the synaptics X11 driver to provide acceleration and
  185. scrolling in X11.
  186. For further information, see
  187. <file:Documentation/input/devices/appletouch.rst>.
  188. To compile this driver as a module, choose M here: the
  189. module will be called appletouch.
  190. config MOUSE_BCM5974
  191. tristate "Apple USB BCM5974 Multitouch trackpad support"
  192. depends on USB_ARCH_HAS_HCD
  193. select USB
  194. help
  195. Say Y here if you have an Apple USB BCM5974 Multitouch
  196. trackpad.
  197. The BCM5974 is the multitouch trackpad found in the Macbook
  198. Air (JAN2008) and Macbook Pro Penryn (FEB2008) laptops.
  199. It is also found in the IPhone (2007) and Ipod Touch (2008).
  200. This driver provides multitouch functionality together with
  201. the synaptics X11 driver.
  202. The interface is currently identical to the appletouch interface,
  203. for further information, see
  204. <file:Documentation/input/devices/appletouch.rst>.
  205. To compile this driver as a module, choose M here: the
  206. module will be called bcm5974.
  207. config MOUSE_CYAPA
  208. tristate "Cypress APA I2C Trackpad support"
  209. depends on I2C
  210. select CRC_ITU_T
  211. help
  212. This driver adds support for Cypress All Points Addressable (APA)
  213. I2C Trackpads, including the ones used in 2012 Samsung Chromebooks.
  214. Say Y here if you have a Cypress APA I2C Trackpad.
  215. To compile this driver as a module, choose M here: the module will be
  216. called cyapa.
  217. config MOUSE_ELAN_I2C
  218. tristate "ELAN I2C Touchpad support"
  219. depends on I2C
  220. help
  221. This driver adds support for Elan I2C/SMbus Trackpads.
  222. Say Y here if you have a ELAN I2C/SMbus Touchpad.
  223. To compile this driver as a module, choose M here: the module will be
  224. called elan_i2c.
  225. config MOUSE_ELAN_I2C_I2C
  226. bool "Enable I2C support"
  227. depends on MOUSE_ELAN_I2C
  228. default y
  229. help
  230. Say Y here if Elan Touchpad in your system is connected to
  231. a standard I2C controller.
  232. If unsure, say Y.
  233. config MOUSE_ELAN_I2C_SMBUS
  234. bool "Enable SMbus support"
  235. depends on MOUSE_ELAN_I2C
  236. help
  237. Say Y here if Elan Touchpad in your system is connected to
  238. a SMbus adapter.
  239. If unsure, say Y.
  240. config MOUSE_INPORT
  241. tristate "InPort/MS/ATIXL busmouse"
  242. depends on ISA
  243. help
  244. Say Y here if you have an InPort, Microsoft or ATI XL busmouse.
  245. They are rather rare these days.
  246. To compile this driver as a module, choose M here: the
  247. module will be called inport.
  248. config MOUSE_ATIXL
  249. bool "ATI XL variant"
  250. depends on MOUSE_INPORT
  251. help
  252. Say Y here if your mouse is of the ATI XL variety.
  253. config MOUSE_LOGIBM
  254. tristate "Logitech busmouse"
  255. depends on ISA
  256. help
  257. Say Y here if you have a Logitech busmouse.
  258. They are rather rare these days.
  259. To compile this driver as a module, choose M here: the
  260. module will be called logibm.
  261. config MOUSE_PC110PAD
  262. tristate "IBM PC110 touchpad"
  263. depends on ISA
  264. help
  265. Say Y if you have the IBM PC-110 micro-notebook and want its
  266. touchpad supported.
  267. To compile this driver as a module, choose M here: the
  268. module will be called pc110pad.
  269. config MOUSE_AMIGA
  270. tristate "Amiga mouse"
  271. depends on AMIGA
  272. help
  273. Say Y here if you have an Amiga and want its native mouse
  274. supported by the kernel.
  275. To compile this driver as a module, choose M here: the
  276. module will be called amimouse.
  277. config MOUSE_ATARI
  278. tristate "Atari mouse"
  279. depends on ATARI
  280. select ATARI_KBD_CORE
  281. help
  282. Say Y here if you have an Atari and want its native mouse
  283. supported by the kernel.
  284. To compile this driver as a module, choose M here: the
  285. module will be called atarimouse.
  286. config MOUSE_RISCPC
  287. tristate "Acorn RiscPC mouse"
  288. depends on ARCH_ACORN
  289. help
  290. Say Y here if you have the Acorn RiscPC computer and want its
  291. native mouse supported.
  292. To compile this driver as a module, choose M here: the
  293. module will be called rpcmouse.
  294. config MOUSE_VSXXXAA
  295. tristate "DEC VSXXX-AA/GA mouse and VSXXX-AB tablet"
  296. select SERIO
  297. help
  298. Say Y (or M) if you want to use a DEC VSXXX-AA (hockey
  299. puck) or a VSXXX-GA (rectangular) mouse. Theses mice are
  300. typically used on DECstations or VAXstations, but can also
  301. be used on any box capable of RS232 (with some adaptor
  302. described in the source file). This driver also works with the
  303. digitizer (VSXXX-AB) DEC produced.
  304. config MOUSE_GPIO
  305. tristate "GPIO mouse"
  306. depends on GPIOLIB || COMPILE_TEST
  307. help
  308. This driver simulates a mouse on GPIO lines of various CPUs (and some
  309. other chips).
  310. Say Y here if your device has buttons or a simple joystick connected
  311. directly to GPIO lines. Your board-specific setup logic must also
  312. provide a platform device and platform data saying which GPIOs are
  313. used.
  314. To compile this driver as a module, choose M here: the
  315. module will be called gpio_mouse.
  316. config MOUSE_PXA930_TRKBALL
  317. tristate "PXA930 Trackball mouse"
  318. depends on CPU_PXA930 || CPU_PXA935
  319. help
  320. Say Y here to support PXA930 Trackball mouse.
  321. config MOUSE_MAPLE
  322. tristate "Maple mouse (for the Dreamcast)"
  323. depends on MAPLE
  324. help
  325. This driver supports the Maple mouse on the SEGA Dreamcast.
  326. Most Dreamcast users, who have a mouse, will say Y here.
  327. To compile this driver as a module choose M here: the module will be
  328. called maplemouse.
  329. config MOUSE_SYNAPTICS_I2C
  330. tristate "Synaptics I2C Touchpad support"
  331. depends on I2C
  332. help
  333. This driver supports Synaptics I2C touchpad controller on eXeda
  334. mobile device.
  335. The device will not work the synaptics X11 driver because
  336. (i) it reports only relative coordinates and has no capabilities
  337. to report absolute coordinates
  338. (ii) the eXeda device itself uses Xfbdev as X Server and it does
  339. not allow using xf86-input-* drivers.
  340. Say y here if you have eXeda device and want to use a Synaptics
  341. I2C Touchpad.
  342. To compile this driver as a module, choose M here: the
  343. module will be called synaptics_i2c.
  344. config MOUSE_SYNAPTICS_USB
  345. tristate "Synaptics USB device support"
  346. depends on USB_ARCH_HAS_HCD
  347. select USB
  348. help
  349. Say Y here if you want to use a Synaptics USB touchpad or pointing
  350. stick.
  351. While these devices emulate an USB mouse by default and can be used
  352. with standard usbhid driver, this driver, together with its X.Org
  353. counterpart, allows you to fully utilize capabilities of the device.
  354. More information can be found at:
  355. <http://jan-steinhoff.de/linux/synaptics-usb.html>
  356. To compile this driver as a module, choose M here: the
  357. module will be called synaptics_usb.
  358. config MOUSE_NAVPOINT_PXA27x
  359. tristate "Synaptics NavPoint (PXA27x SSP/SPI)"
  360. depends on PXA27x && PXA_SSP
  361. help
  362. This driver adds support for the Synaptics NavPoint touchpad connected
  363. to a PXA27x SSP port in SPI slave mode. The device emulates a mouse;
  364. a tap or tap-and-a-half drag gesture emulates the left mouse button.
  365. For example, use the xf86-input-evdev driver for an X pointing device.
  366. To compile this driver as a module, choose M here: the
  367. module will be called navpoint.
  368. endif