Merge branch 'spectre' of git://git.armlinux.org.uk/~rmk/linux-arm
[sfrench/cifs-2.6.git] / drivers / input / serio / Kconfig
1 #
2 # Input core configuration
3 #
4 config SERIO
5         tristate "Serial I/O support"
6         default y
7         help
8           Say Yes here if you have any input device that uses serial I/O to
9           communicate with the system. This includes the
10                         * standard AT keyboard and PS/2 mouse *
11           as well as serial mice, Sun keyboards, some joysticks and 6dof
12           devices and more.
13
14           If unsure, say Y.
15
16           To compile this driver as a module, choose M here: the
17           module will be called serio.
18
19 config ARCH_MIGHT_HAVE_PC_SERIO
20         bool
21         help
22           Select this config option from the architecture Kconfig if
23           the architecture might use a PC serio device (i8042) to
24           communicate with keyboard, mouse, etc.
25
26 if SERIO
27
28 config SERIO_I8042
29         tristate "i8042 PC Keyboard controller"
30         default y
31         depends on ARCH_MIGHT_HAVE_PC_SERIO
32         help
33           i8042 is the chip over which the standard AT keyboard and PS/2
34           mouse are connected to the computer. If you use these devices,
35           you'll need to say Y here.
36
37           If unsure, say Y.
38
39           To compile this driver as a module, choose M here: the
40           module will be called i8042.
41
42 config SERIO_SERPORT
43         tristate "Serial port line discipline"
44         default y
45         depends on TTY
46         help
47           Say Y here if you plan to use an input device (mouse, joystick,
48           tablet, 6dof) that communicates over the RS232 serial (COM) port.
49
50           More information is available: <file:Documentation/input/input.rst>
51
52           If unsure, say Y.
53
54           To compile this driver as a module, choose M here: the
55           module will be called serport.
56
57 config SERIO_CT82C710
58         tristate "ct82c710 Aux port controller"
59         depends on X86
60         help
61           Say Y here if you have a Texas Instruments TravelMate notebook
62           equipped with the ct82c710 chip and want to use a mouse connected
63           to the "QuickPort".
64
65           If unsure, say N.
66
67           To compile this driver as a module, choose M here: the
68           module will be called ct82c710.
69
70 config SERIO_Q40KBD
71         tristate "Q40 keyboard controller"
72         depends on Q40
73
74 config SERIO_PARKBD
75         tristate "Parallel port keyboard adapter"
76         depends on PARPORT
77         help
78           Say Y here if you built a simple parallel port adapter to attach
79           an additional AT keyboard, XT keyboard or PS/2 mouse.
80
81           More information is available: <file:Documentation/input/input.rst>
82
83           If unsure, say N.
84
85           To compile this driver as a module, choose M here: the
86           module will be called parkbd.
87
88 config SERIO_RPCKBD
89         tristate "Acorn RiscPC keyboard controller"
90         depends on ARCH_ACORN
91         default y
92         help
93           Say Y here if you have the Acorn RiscPC and want to use an AT
94           keyboard connected to its keyboard controller.
95
96           To compile this driver as a module, choose M here: the
97           module will be called rpckbd.
98
99 config SERIO_AMBAKMI
100         tristate "AMBA KMI keyboard controller"
101         depends on ARM_AMBA
102
103 config SERIO_SA1111
104         tristate "Intel SA1111 keyboard controller"
105         depends on SA1111
106
107 config SERIO_GSCPS2
108         tristate "HP GSC PS/2 keyboard and PS/2 mouse controller"
109         depends on GSC
110         default y
111         help
112           This driver provides support for the PS/2 ports on PA-RISC machines
113           over which HP PS/2 keyboards and PS/2 mice may be connected.
114           If you use these devices, you'll need to say Y here.
115
116           It's safe to enable this driver, so if unsure, say Y.
117
118           To compile this driver as a module, choose M here: the
119           module will be called gscps2.
120
121 config HP_SDC
122         tristate "HP System Device Controller i8042 Support"
123         depends on (GSC || HP300) && SERIO
124         default y
125         help
126           This option enables support for the "System Device
127           Controller", an i8042 carrying microcode to manage a
128           few miscellaneous devices on some Hewlett Packard systems.
129           The SDC itself contains a 10ms resolution timer/clock capable
130           of delivering interrupts on a periodic and one-shot basis.
131           The SDC may also be connected to a battery-backed real-time
132           clock, a basic audio waveform generator, and an HP-HIL Master
133           Link Controller serving up to seven input devices.
134
135           By itself this option is rather useless, but enabling it will
136           enable selection of drivers for the abovementioned devices.
137           It is, however, incompatible with the old, reliable HIL keyboard
138           driver, and the new HIL driver is experimental, so if you plan
139           to use a HIL keyboard as your primary keyboard, you may wish
140           to keep using that driver until the new HIL drivers have had
141           more testing.
142
143 config HIL_MLC
144         tristate "HIL MLC Support (needed for HIL input devices)"
145         depends on HP_SDC
146
147 config SERIO_PCIPS2
148         tristate "PCI PS/2 keyboard and PS/2 mouse controller"
149         depends on PCI
150         help
151           Say Y here if you have a Mobility Docking station with PS/2
152           keyboard and mice ports.
153
154           To compile this driver as a module, choose M here: the
155           module will be called pcips2.
156
157 config SERIO_MACEPS2
158         tristate "SGI O2 MACE PS/2 controller"
159         depends on SGI_IP32
160         help
161           Say Y here if you have SGI O2 workstation and want to use its
162           PS/2 ports.
163
164           To compile this driver as a module, choose M here: the
165           module will be called maceps2.
166
167 config SERIO_LIBPS2
168         tristate "PS/2 driver library"
169         depends on SERIO_I8042 || SERIO_I8042=n
170         help
171           Say Y here if you are using a driver for device connected
172           to a PS/2 port, such as PS/2 mouse or standard AT keyboard.
173
174           To compile this driver as a module, choose M here: the
175           module will be called libps2.
176
177 config SERIO_RAW
178         tristate "Raw access to serio ports"
179         help
180           Say Y here if you want to have raw access to serio ports, such as
181           AUX ports on i8042 keyboard controller. Each serio port that is
182           bound to this driver will be accessible via a char device with
183           major 10 and dynamically allocated minor. The driver will try
184           allocating minor 1 (that historically corresponds to /dev/psaux)
185           first. To bind this driver to a serio port use sysfs interface:
186
187               echo -n "serio_raw" > /sys/bus/serio/devices/serioX/drvctl
188
189           To compile this driver as a module, choose M here: the
190           module will be called serio_raw.
191
192 config SERIO_XILINX_XPS_PS2
193         tristate "Xilinx XPS PS/2 Controller Support"
194         depends on PPC || MICROBLAZE
195         help
196           This driver supports XPS PS/2 IP from the Xilinx EDK on
197           PowerPC platform.
198
199           To compile this driver as a module, choose M here: the
200           module will be called xilinx_ps2.
201
202 config SERIO_ALTERA_PS2
203         tristate "Altera UP PS/2 controller"
204         depends on HAS_IOMEM
205         help
206           Say Y here if you have Altera University Program PS/2 ports.
207
208           To compile this driver as a module, choose M here: the
209           module will be called altera_ps2.
210
211 config SERIO_AMS_DELTA
212         tristate "Amstrad Delta (E3) mailboard support"
213         depends on MACH_AMS_DELTA
214         default y
215         ---help---
216           Say Y here if you have an E3 and want to use its mailboard,
217           or any standard AT keyboard connected to the mailboard port.
218
219           When used for the E3 mailboard, a non-standard key table
220           must be loaded from userspace, possibly using udev extras
221           provided keymap helper utility.
222
223           To compile this driver as a module, choose M here;
224           the module will be called ams_delta_serio.
225
226 config SERIO_PS2MULT
227         tristate "TQC PS/2 multiplexer"
228         help
229           Say Y here if you have the PS/2 line multiplexer like the one
230           present on TQC boards.
231
232           To compile this driver as a module, choose M here: the
233           module will be called ps2mult.
234
235 config SERIO_ARC_PS2
236         tristate "ARC PS/2 support"
237         depends on HAS_IOMEM
238         help
239           Say Y here if you have an ARC FPGA platform with a PS/2
240           controller in it.
241
242           To compile this driver as a module, choose M here; the module
243           will be called arc_ps2.
244
245 config SERIO_APBPS2
246         tristate "GRLIB APBPS2 PS/2 keyboard/mouse controller"
247         depends on OF
248         help
249           Say Y here if you want support for GRLIB APBPS2 peripherals used
250           to connect to PS/2 keyboard and/or mouse.
251
252           To compile this driver as a module, choose M here: the module will
253           be called apbps2.
254
255 config SERIO_OLPC_APSP
256         tristate "OLPC AP-SP input support"
257         depends on OLPC || COMPILE_TEST
258         help
259           Say Y here if you want support for the keyboard and touchpad included
260           in the OLPC XO-1.75 and XO-4 laptops.
261
262           To compile this driver as a module, choose M here: the module will
263           be called olpc_apsp.
264
265 config HYPERV_KEYBOARD
266         tristate "Microsoft Synthetic Keyboard driver"
267         depends on HYPERV
268         default HYPERV
269         help
270           Select this option to enable the Hyper-V Keyboard driver.
271
272           To compile this driver as a module, choose M here: the module will
273           be called hyperv_keyboard.
274
275 config SERIO_SUN4I_PS2
276         tristate "Allwinner A10 PS/2 controller support"
277         depends on ARCH_SUNXI || COMPILE_TEST
278         help
279           This selects support for the PS/2 Host Controller on
280           Allwinner A10.
281
282           To compile this driver as a module, choose M here: the
283           module will be called sun4i-ps2.
284
285 config SERIO_GPIO_PS2
286         tristate "GPIO PS/2 bit banging driver"
287         depends on GPIOLIB
288         help
289           Say Y here if you want PS/2 bit banging support via GPIO.
290
291           To compile this driver as a module, choose M here: the
292           module will be called ps2-gpio.
293
294           If you are unsure, say N.
295
296 config USERIO
297         tristate "User space serio port driver support"
298         help
299           Say Y here if you want to support user level drivers for serio
300           subsystem accessible under char device 10:240 - /dev/userio. Using
301           this facility userspace programs can implement serio ports that
302           will be used by the standard in-kernel serio consumer drivers,
303           such as psmouse and atkbd.
304
305           To compile this driver as a module, choose M here: the module will be
306           called userio.
307
308           If you are unsure, say N.
309
310 endif