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