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