blob: 5d3d65c0733ecf693164caa67932f4eeb08b307c [file] [log] [blame]
Paul Gortmaker9bef3d42012-01-05 18:21:43 -05001#
2# The 8250/16550 serial drivers. You shouldn't be in this list unless
3# you somehow have an implicit or explicit dependency on SERIAL_8250.
4#
5
6config SERIAL_8250
7 tristate "8250/16550 and compatible serial support"
8 select SERIAL_CORE
9 ---help---
10 This selects whether you want to include the driver for the standard
11 serial ports. The standard answer is Y. People who might say N
12 here are those that are setting up dedicated Ethernet WWW/FTP
13 servers, or users that have one of the various bus mice instead of a
14 serial mouse and don't intend to use their machine's standard serial
Paul Bollee943f582013-05-28 09:29:36 +020015 port for anything. (Note that the Cyclades multi serial port driver
16 does not need this driver built in for it to work.)
Paul Gortmaker9bef3d42012-01-05 18:21:43 -050017
18 To compile this driver as a module, choose M here: the
19 module will be called 8250.
20 [WARNING: Do not compile this driver as a module if you are using
21 non-standard serial ports, since the configuration information will
22 be lost when the driver is unloaded. This limitation may be lifted
23 in the future.]
24
25 BTW1: If you have a mouseman serial mouse which is not recognized by
26 the X window system, try running gpm first.
27
28 BTW2: If you intend to use a software modem (also called Winmodem)
29 under Linux, forget it. These modems are crippled and require
30 proprietary drivers which are only available under Windows.
31
32 Most people will say Y or M here, so that they can use serial mice,
33 modems and similar devices connecting to the standard serial ports.
34
Jiri Slaby9326b042013-03-19 11:34:57 +010035config SERIAL_8250_DEPRECATED_OPTIONS
36 bool "Support 8250_core.* kernel options (DEPRECATED)"
37 depends on SERIAL_8250
38 default y
39 ---help---
40 In 3.7 we renamed 8250 to 8250_core by mistake, so now we have to
41 accept kernel parameters in both forms like 8250_core.nr_uarts=4 and
42 8250.nr_uarts=4. We now renamed the module back to 8250, but if
43 anybody noticed in 3.7 and changed their userspace we still have to
Randy Dunlapf3014122013-11-07 09:58:14 -080044 keep the 8250_core.* options around until they revert the changes
Jiri Slaby9326b042013-03-19 11:34:57 +010045 they already did.
46
47 If 8250 is built as a module, this adds 8250_core alias instead.
48
49 If you did not notice yet and/or you have userspace from pre-3.7, it
50 is safe (and recommended) to say N here.
51
Sean Young835d8442012-09-07 19:06:23 +010052config SERIAL_8250_PNP
53 bool "8250/16550 PNP device support" if EXPERT
54 depends on SERIAL_8250 && PNP
55 default y
56 ---help---
57 This builds standard PNP serial support. You may be able to
58 disable this feature if you only need legacy serial support.
59
Paul Gortmaker9bef3d42012-01-05 18:21:43 -050060config SERIAL_8250_CONSOLE
61 bool "Console on 8250/16550 and compatible serial port"
62 depends on SERIAL_8250=y
63 select SERIAL_CORE_CONSOLE
Rob Herringd2fd6812014-04-18 17:19:56 -050064 select SERIAL_EARLYCON
Paul Gortmaker9bef3d42012-01-05 18:21:43 -050065 ---help---
66 If you say Y here, it will be possible to use a serial port as the
67 system console (the system console is the device which receives all
68 kernel messages and warnings and which allows logins in single user
69 mode). This could be useful if some terminal or printer is connected
70 to that serial port.
71
72 Even if you say Y here, the currently visible virtual console
73 (/dev/tty0) will still be used as the system console by default, but
74 you can alter that using a kernel command line option such as
75 "console=ttyS1". (Try "man bootparam" or see the documentation of
76 your boot loader (grub or lilo or loadlin) about how to pass options
77 to the kernel at boot time.)
78
79 If you don't have a VGA card installed and you say Y here, the
80 kernel will automatically use the first serial line, /dev/ttyS0, as
81 system console.
82
83 You can set that using a kernel command line option such as
84 "console=uart8250,io,0x3f8,9600n8"
85 "console=uart8250,mmio,0xff5e0000,115200n8".
86 and it will switch to normal serial console when the corresponding
87 port is ready.
88 "earlycon=uart8250,io,0x3f8,9600n8"
89 "earlycon=uart8250,mmio,0xff5e0000,115200n8".
90 it will not only setup early console.
91
92 If unsure, say N.
93
Paul Gortmaker9bef3d42012-01-05 18:21:43 -050094config SERIAL_8250_GSC
95 tristate
96 depends on SERIAL_8250 && GSC
97 default SERIAL_8250
98
Heikki Krogerus9ee4b832013-01-10 11:25:11 +020099config SERIAL_8250_DMA
100 bool "DMA support for 16550 compatible UART controllers" if EXPERT
101 depends on SERIAL_8250 && DMADEVICES=y
102 default SERIAL_8250
103 help
104 This builds DMA support that can be used with 8250/16650
105 compatible UART controllers that support DMA signaling.
106
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500107config SERIAL_8250_PCI
108 tristate "8250/16550 PCI device support" if EXPERT
109 depends on SERIAL_8250 && PCI
110 default SERIAL_8250
111 help
112 This builds standard PCI serial support. You may be able to
113 disable this feature if you only need legacy serial support.
114 Saves about 9K.
Stefan Seyfried972ce082013-07-01 09:14:21 +0200115 Note that serial ports on NetMos 9835 Multi-I/O cards are handled
116 by the parport_serial driver, enabled with CONFIG_PARPORT_SERIAL.
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500117
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500118config SERIAL_8250_HP300
119 tristate
120 depends on SERIAL_8250 && HP300
121 default SERIAL_8250
122
123config SERIAL_8250_CS
124 tristate "8250/16550 PCMCIA device support"
125 depends on PCMCIA && SERIAL_8250
126 ---help---
127 Say Y here to enable support for 16-bit PCMCIA serial devices,
128 including serial port cards, modems, and the modem functions of
129 multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are
130 credit-card size devices often used with laptops.)
131
132 To compile this driver as a module, choose M here: the
133 module will be called serial_cs.
134
135 If unsure, say N.
136
137config SERIAL_8250_NR_UARTS
138 int "Maximum number of 8250/16550 serial ports"
139 depends on SERIAL_8250
140 default "4"
141 help
142 Set this to the number of serial ports you want the driver
143 to support. This includes any ports discovered via ACPI or
144 PCI enumeration and any ports that may be added at run-time
145 via hot-plug, or any ISA multi-port serial cards.
146
147config SERIAL_8250_RUNTIME_UARTS
148 int "Number of 8250/16550 serial ports to register at runtime"
149 depends on SERIAL_8250
150 range 0 SERIAL_8250_NR_UARTS
151 default "4"
152 help
153 Set this to the maximum number of serial ports you want
154 the kernel to register at boot time. This can be overridden
155 with the module parameter "nr_uarts", or boot-time parameter
156 8250.nr_uarts
157
158config SERIAL_8250_EXTENDED
159 bool "Extended 8250/16550 serial driver options"
160 depends on SERIAL_8250
161 help
162 If you wish to use any non-standard features of the standard "dumb"
163 driver, say Y here. This includes HUB6 support, shared serial
164 interrupts, special multiport support, support for more than the
165 four COM 1/2/3/4 boards, etc.
166
167 Note that the answer to this question won't directly affect the
168 kernel: saying N will just cause the configurator to skip all
169 the questions about serial driver options. If unsure, say N.
170
171config SERIAL_8250_MANY_PORTS
172 bool "Support more than 4 legacy serial ports"
173 depends on SERIAL_8250_EXTENDED && !IA64
174 help
175 Say Y here if you have dumb serial boards other than the four
176 standard COM 1/2/3/4 ports. This may happen if you have an AST
177 FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available
178 from <http://www.tldp.org/docs.html#howto>), or other custom
179 serial port hardware which acts similar to standard serial port
180 hardware. If you only use the standard COM 1/2/3/4 ports, you can
181 say N here to save some memory. You can also say Y if you have an
182 "intelligent" multiport card such as Cyclades, Digiboards, etc.
183
184#
185# Multi-port serial cards
186#
187
188config SERIAL_8250_FOURPORT
189 tristate "Support Fourport cards"
190 depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
191 help
192 Say Y here if you have an AST FourPort serial board.
193
194 To compile this driver as a module, choose M here: the module
195 will be called 8250_fourport.
196
197config SERIAL_8250_ACCENT
198 tristate "Support Accent cards"
199 depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
200 help
201 Say Y here if you have an Accent Async serial board.
202
203 To compile this driver as a module, choose M here: the module
204 will be called 8250_accent.
205
206config SERIAL_8250_BOCA
207 tristate "Support Boca cards"
208 depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
209 help
210 Say Y here if you have a Boca serial board. Please read the Boca
211 mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>
212
213 To compile this driver as a module, choose M here: the module
214 will be called 8250_boca.
215
216config SERIAL_8250_EXAR_ST16C554
217 tristate "Support Exar ST16C554/554D Quad UART"
218 depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
219 help
220 The Uplogix Envoy TU301 uses this Exar Quad UART. If you are
221 tinkering with your Envoy TU301, or have a machine with this UART,
222 say Y here.
223
224 To compile this driver as a module, choose M here: the module
225 will be called 8250_exar_st16c554.
226
227config SERIAL_8250_HUB6
228 tristate "Support Hub6 cards"
229 depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS
230 help
231 Say Y here if you have a HUB6 serial board.
232
233 To compile this driver as a module, choose M here: the module
234 will be called 8250_hub6.
235
236#
237# Misc. options/drivers.
238#
239
240config SERIAL_8250_SHARE_IRQ
241 bool "Support for sharing serial interrupts"
242 depends on SERIAL_8250_EXTENDED
243 help
244 Some serial boards have hardware support which allows multiple dumb
245 serial ports on the same board to share a single IRQ. To enable
246 support for this in the serial driver, say Y here.
247
248config SERIAL_8250_DETECT_IRQ
249 bool "Autodetect IRQ on standard ports (unsafe)"
250 depends on SERIAL_8250_EXTENDED
251 help
252 Say Y here if you want the kernel to try to guess which IRQ
253 to use for your serial port.
254
255 This is considered unsafe; it is far better to configure the IRQ in
256 a boot script using the setserial command.
257
258 If unsure, say N.
259
260config SERIAL_8250_RSA
261 bool "Support RSA serial ports"
262 depends on SERIAL_8250_EXTENDED
263 help
264 ::: To be written :::
265
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500266config SERIAL_8250_ACORN
267 tristate "Acorn expansion card serial port support"
268 depends on ARCH_ACORN && SERIAL_8250
269 help
270 If you have an Atomwide Serial card or Serial Port card for an Acorn
271 system, say Y to this option. The driver can handle 1, 2, or 3 port
272 cards. If unsure, say N.
273
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500274config SERIAL_8250_FSL
275 bool
276 depends on SERIAL_8250_CONSOLE && PPC_UDBG_16550
277 default PPC
278
279config SERIAL_8250_DW
280 tristate "Support for Synopsys DesignWare 8250 quirks"
Heikki Krogerus6a7320c2013-01-10 11:25:10 +0200281 depends on SERIAL_8250
Paul Gortmaker9bef3d42012-01-05 18:21:43 -0500282 help
283 Selecting this option will enable handling of the extra features
284 present in the Synopsys DesignWare APB UART.
Magnus Damm22886ee2012-05-03 21:13:09 +0900285
286config SERIAL_8250_EM
Masanari Iida46e99c42012-10-24 23:29:41 +0900287 tristate "Support for Emma Mobile integrated serial port"
Magnus Damm22886ee2012-05-03 21:13:09 +0900288 depends on SERIAL_8250 && ARM && HAVE_CLK
289 help
290 Selecting this option will add support for the integrated serial
291 port hardware found on the Emma Mobile line of processors.
292 If unsure, say N.
John Crispinc4208112013-01-25 19:39:51 +0100293
294config SERIAL_8250_RT288X
295 bool "Ralink RT288x/RT305x/RT3662/RT3883 serial port support"
296 depends on SERIAL_8250 && (SOC_RT288X || SOC_RT305X || SOC_RT3883)
297 help
298 If you have a Ralink RT288x/RT305x SoC based board and want to use the
299 serial port, say Y to this option. The driver can handle up to 2 serial
300 ports. If unsure, say N.
Ricardo Ribalda Delgado28e3fb62014-07-31 21:22:26 +0200301
Sebastian Andrzej Siewior61929cf2014-09-29 20:06:39 +0200302config SERIAL_8250_OMAP
303 tristate "Support for OMAP internal UART (8250 based driver)"
304 depends on SERIAL_8250 && ARCH_OMAP2PLUS
305 help
306 If you have a machine based on an Texas Instruments OMAP CPU you
307 can enable its onboard serial ports by enabling this option.
308
309 This driver uses ttyS instead of ttyO.
310
Ricardo Ribalda Delgado28e3fb62014-07-31 21:22:26 +0200311config SERIAL_8250_FINTEK
312 tristate "Support for Fintek F81216A LPC to 4 UART"
313 depends on SERIAL_8250 && PNP
314 help
315 Selecting this option will add support for the Fintek F81216A
316 LPC to 4 UART. This device has some RS485 functionality not available
317 through the PNP driver. If unsure, say N.
318
Matthias Bruggerb4756f42014-09-09 17:31:42 +0200319config SERIAL_8250_MT6577
320 bool "Mediatek serial port support"
321 depends on SERIAL_8250 && ARCH_MEDIATEK
322 help
323 If you have a Mediatek based board and want to use the
324 serial port, say Y to this option. If unsure, say N.