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