2 # Mouse driver configuration
8 Say Y here, and a list of supported mice will be displayed.
9 This option doesn't affect the kernel.
20 select SERIO_I8042 if ARCH_MIGHT_HAVE_PC_SERIO
21 select SERIO_GSCPS2 if GSC
23 Say Y here if you have a PS/2 mouse connected to your system. This
24 includes the standard 2 or 3-button PS/2 mouse, as well as PS/2
25 mice with wheels and extra buttons, Microsoft, Logitech or Genius
28 Synaptics, ALPS or Elantech TouchPad users might be interested
29 in a specialized Xorg/XFree86 driver at:
30 <http://w1.894.telia.com/~u89404340/touchpad/index.html>
31 and a new version of GPM at:
32 <http://www.geocities.com/dt_or/gpm/gpm.html>
33 <http://xorg.freedesktop.org/archive/individual/driver/>
34 to take advantage of the advanced features of the touchpad.
38 To compile this driver as a module, choose M here: the
39 module will be called psmouse.
42 bool "ALPS PS/2 mouse protocol extension" if EXPERT
46 Say Y here if you have an ALPS PS/2 touchpad connected to
52 bool "BYD PS/2 mouse protocol extension" if EXPERT
56 Say Y here if you have a BYD PS/2 touchpad connected to
61 config MOUSE_PS2_LOGIPS2PP
62 bool "Logitech PS/2++ mouse protocol extension" if EXPERT
66 Say Y here if you have a Logitech PS/2++ mouse connected to
71 config MOUSE_PS2_SYNAPTICS
72 bool "Synaptics PS/2 mouse protocol extension" if EXPERT
76 Say Y here if you have a Synaptics PS/2 TouchPad connected to
81 config MOUSE_PS2_SYNAPTICS_SMBUS
82 bool "Synaptics PS/2 SMbus companion" if EXPERT
85 depends on I2C=y || I2C=MOUSE_PS2
86 select MOUSE_PS2_SMBUS
88 Say Y here if you have a Synaptics RMI4 touchpad connected to
89 to an SMBus, but enumerated through PS/2.
93 config MOUSE_PS2_CYPRESS
94 bool "Cypress PS/2 mouse protocol extension" if EXPERT
98 Say Y here if you have a Cypress PS/2 Trackpad connected to
103 config MOUSE_PS2_LIFEBOOK
104 bool "Fujitsu Lifebook PS/2 mouse protocol extension" if EXPERT
106 depends on MOUSE_PS2 && X86 && DMI
108 Say Y here if you have a Fujitsu B-series Lifebook PS/2
109 TouchScreen connected to your system.
113 config MOUSE_PS2_TRACKPOINT
114 bool "IBM Trackpoint PS/2 mouse protocol extension" if EXPERT
118 Say Y here if you have an IBM Trackpoint PS/2 mouse connected
123 config MOUSE_PS2_ELANTECH
124 bool "Elantech PS/2 protocol extension"
127 Say Y here if you have an Elantech PS/2 touchpad connected
130 This driver exposes some configuration registers via sysfs
131 entries. For further information,
132 see <file:Documentation/input/devices/elantech.rst>.
136 config MOUSE_PS2_ELANTECH_SMBUS
137 bool "Elantech PS/2 SMbus companion" if EXPERT
139 depends on MOUSE_PS2 && MOUSE_PS2_ELANTECH
140 depends on I2C=y || I2C=MOUSE_PS2
141 select MOUSE_PS2_SMBUS
143 Say Y here if you have a Elantech touchpad connected to
144 to an SMBus, but enumerated through PS/2.
148 config MOUSE_PS2_SENTELIC
149 bool "Sentelic Finger Sensing Pad PS/2 protocol extension"
152 Say Y here if you have a laptop (such as MSI WIND Netbook)
153 with Sentelic Finger Sensing Pad touchpad.
157 config MOUSE_PS2_TOUCHKIT
158 bool "eGalax TouchKit PS/2 protocol extension"
161 Say Y here if you have an eGalax TouchKit PS/2 touchscreen
162 connected to your system.
166 config MOUSE_PS2_OLPC
167 bool "OLPC PS/2 mouse protocol extension"
168 depends on MOUSE_PS2 && OLPC
170 Say Y here if you have an OLPC XO-1 laptop (with built-in
171 PS/2 touchpad/tablet device). The manufacturer calls the
176 config MOUSE_PS2_FOCALTECH
177 bool "FocalTech PS/2 mouse protocol extension" if EXPERT
181 Say Y here if you have a FocalTech PS/2 TouchPad connected to
186 config MOUSE_PS2_VMMOUSE
187 bool "Virtual mouse (vmmouse)"
188 depends on MOUSE_PS2 && X86 && HYPERVISOR_GUEST
190 Say Y here if you are running under control of VMware hypervisor
191 (ESXi, Workstation or Fusion). Also make sure that when you enable
192 this option, you remove the xf86-input-vmmouse user-space driver
193 or upgrade it to at least xf86-input-vmmouse 13.1.0, which doesn't
194 load in the presence of an in-kernel vmmouse driver.
198 config MOUSE_PS2_SMBUS
203 tristate "Serial mouse"
206 Say Y here if you have a serial (RS-232, COM port) mouse connected
207 to your system. This includes Sun, MouseSystems, Microsoft,
208 Logitech and all other compatible serial mice.
212 To compile this driver as a module, choose M here: the
213 module will be called sermouse.
215 config MOUSE_APPLETOUCH
216 tristate "Apple USB Touchpad support"
217 depends on USB_ARCH_HAS_HCD
220 Say Y here if you want to use an Apple USB Touchpad.
222 These are the touchpads that can be found on post-February 2005
223 Apple Powerbooks (prior models have a Synaptics touchpad connected
226 This driver provides a basic mouse driver but can be interfaced
227 with the synaptics X11 driver to provide acceleration and
230 For further information, see
231 <file:Documentation/input/devices/appletouch.rst>.
233 To compile this driver as a module, choose M here: the
234 module will be called appletouch.
237 tristate "Apple USB BCM5974 Multitouch trackpad support"
238 depends on USB_ARCH_HAS_HCD
241 Say Y here if you have an Apple USB BCM5974 Multitouch
244 The BCM5974 is the multitouch trackpad found in the Macbook
245 Air (JAN2008) and Macbook Pro Penryn (FEB2008) laptops.
247 It is also found in the IPhone (2007) and Ipod Touch (2008).
249 This driver provides multitouch functionality together with
250 the synaptics X11 driver.
252 The interface is currently identical to the appletouch interface,
253 for further information, see
254 <file:Documentation/input/devices/appletouch.rst>.
256 To compile this driver as a module, choose M here: the
257 module will be called bcm5974.
260 tristate "Cypress APA I2C Trackpad support"
264 This driver adds support for Cypress All Points Addressable (APA)
265 I2C Trackpads, including the ones used in 2012 Samsung Chromebooks.
267 Say Y here if you have a Cypress APA I2C Trackpad.
269 To compile this driver as a module, choose M here: the module will be
272 config MOUSE_ELAN_I2C
273 tristate "ELAN I2C Touchpad support"
276 This driver adds support for Elan I2C/SMbus Trackpads.
278 Say Y here if you have a ELAN I2C/SMbus Touchpad.
280 To compile this driver as a module, choose M here: the module will be
283 config MOUSE_ELAN_I2C_I2C
284 bool "Enable I2C support"
285 depends on MOUSE_ELAN_I2C
288 Say Y here if Elan Touchpad in your system is connected to
289 a standard I2C controller.
293 config MOUSE_ELAN_I2C_SMBUS
294 bool "Enable SMbus support"
295 depends on MOUSE_ELAN_I2C
297 Say Y here if Elan Touchpad in your system is connected to
303 tristate "InPort/MS/ATIXL busmouse"
306 Say Y here if you have an InPort, Microsoft or ATI XL busmouse.
307 They are rather rare these days.
309 To compile this driver as a module, choose M here: the
310 module will be called inport.
313 bool "ATI XL variant"
314 depends on MOUSE_INPORT
316 Say Y here if your mouse is of the ATI XL variety.
319 tristate "Logitech busmouse"
322 Say Y here if you have a Logitech busmouse.
323 They are rather rare these days.
325 To compile this driver as a module, choose M here: the
326 module will be called logibm.
328 config MOUSE_PC110PAD
329 tristate "IBM PC110 touchpad"
332 Say Y if you have the IBM PC-110 micro-notebook and want its
335 To compile this driver as a module, choose M here: the
336 module will be called pc110pad.
339 tristate "Amiga mouse"
342 Say Y here if you have an Amiga and want its native mouse
343 supported by the kernel.
345 To compile this driver as a module, choose M here: the
346 module will be called amimouse.
349 tristate "Atari mouse"
351 select ATARI_KBD_CORE
353 Say Y here if you have an Atari and want its native mouse
354 supported by the kernel.
356 To compile this driver as a module, choose M here: the
357 module will be called atarimouse.
360 tristate "Acorn RiscPC mouse"
361 depends on ARCH_ACORN
363 Say Y here if you have the Acorn RiscPC computer and want its
364 native mouse supported.
366 To compile this driver as a module, choose M here: the
367 module will be called rpcmouse.
370 tristate "DEC VSXXX-AA/GA mouse and VSXXX-AB tablet"
373 Say Y (or M) if you want to use a DEC VSXXX-AA (hockey
374 puck) or a VSXXX-GA (rectangular) mouse. Theses mice are
375 typically used on DECstations or VAXstations, but can also
376 be used on any box capable of RS232 (with some adaptor
377 described in the source file). This driver also works with the
378 digitizer (VSXXX-AB) DEC produced.
381 tristate "GPIO mouse"
382 depends on GPIOLIB || COMPILE_TEST
385 This driver simulates a mouse on GPIO lines of various CPUs (and some
388 Say Y here if your device has buttons or a simple joystick connected
389 directly to GPIO lines. Your board-specific setup logic must also
390 provide a platform device and platform data saying which GPIOs are
393 To compile this driver as a module, choose M here: the
394 module will be called gpio_mouse.
396 config MOUSE_PXA930_TRKBALL
397 tristate "PXA930 Trackball mouse"
398 depends on CPU_PXA930 || CPU_PXA935
400 Say Y here to support PXA930 Trackball mouse.
403 tristate "Maple mouse (for the Dreamcast)"
406 This driver supports the Maple mouse on the SEGA Dreamcast.
408 Most Dreamcast users, who have a mouse, will say Y here.
410 To compile this driver as a module choose M here: the module will be
413 config MOUSE_SYNAPTICS_I2C
414 tristate "Synaptics I2C Touchpad support"
417 This driver supports Synaptics I2C touchpad controller on eXeda
419 The device will not work the synaptics X11 driver because
420 (i) it reports only relative coordinates and has no capabilities
421 to report absolute coordinates
422 (ii) the eXeda device itself uses Xfbdev as X Server and it does
423 not allow using xf86-input-* drivers.
425 Say y here if you have eXeda device and want to use a Synaptics
428 To compile this driver as a module, choose M here: the
429 module will be called synaptics_i2c.
431 config MOUSE_SYNAPTICS_USB
432 tristate "Synaptics USB device support"
433 depends on USB_ARCH_HAS_HCD
436 Say Y here if you want to use a Synaptics USB touchpad or pointing
439 While these devices emulate an USB mouse by default and can be used
440 with standard usbhid driver, this driver, together with its X.Org
441 counterpart, allows you to fully utilize capabilities of the device.
442 More information can be found at:
443 <http://jan-steinhoff.de/linux/synaptics-usb.html>
445 To compile this driver as a module, choose M here: the
446 module will be called synaptics_usb.
448 config MOUSE_NAVPOINT_PXA27x
449 tristate "Synaptics NavPoint (PXA27x SSP/SPI)"
450 depends on PXA27x && PXA_SSP
452 This driver adds support for the Synaptics NavPoint touchpad connected
453 to a PXA27x SSP port in SPI slave mode. The device emulates a mouse;
454 a tap or tap-and-a-half drag gesture emulates the left mouse button.
455 For example, use the xf86-input-evdev driver for an X pointing device.
457 To compile this driver as a module, choose M here: the
458 module will be called navpoint.