xref: /OK3568_Linux_fs/kernel/drivers/tty/serial/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# Serial device configuration
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun
6*4882a593Smuzhiyunmenu "Serial drivers"
7*4882a593Smuzhiyun	depends on HAS_IOMEM
8*4882a593Smuzhiyun
9*4882a593Smuzhiyunconfig SERIAL_EARLYCON
10*4882a593Smuzhiyun	bool
11*4882a593Smuzhiyun	depends on SERIAL_CORE
12*4882a593Smuzhiyun	help
13*4882a593Smuzhiyun	  Support for early consoles with the earlycon parameter. This enables
14*4882a593Smuzhiyun	  the console before standard serial driver is probed. The console is
15*4882a593Smuzhiyun	  enabled when early_param is processed.
16*4882a593Smuzhiyun
17*4882a593Smuzhiyunsource "drivers/tty/serial/8250/Kconfig"
18*4882a593Smuzhiyun
19*4882a593Smuzhiyuncomment "Non-8250 serial port support"
20*4882a593Smuzhiyun
21*4882a593Smuzhiyunconfig SERIAL_AMBA_PL010
22*4882a593Smuzhiyun	tristate "ARM AMBA PL010 serial port support"
23*4882a593Smuzhiyun	depends on ARM_AMBA
24*4882a593Smuzhiyun	select SERIAL_CORE
25*4882a593Smuzhiyun	help
26*4882a593Smuzhiyun	  This selects the ARM(R) AMBA(R) PrimeCell PL010 UART.  If you have
27*4882a593Smuzhiyun	  an Integrator/AP or Integrator/PP2 platform, or if you have a
28*4882a593Smuzhiyun	  Cirrus Logic EP93xx CPU, say Y or M here.
29*4882a593Smuzhiyun
30*4882a593Smuzhiyun	  If unsure, say N.
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunconfig SERIAL_AMBA_PL010_CONSOLE
33*4882a593Smuzhiyun	bool "Support for console on AMBA serial port"
34*4882a593Smuzhiyun	depends on SERIAL_AMBA_PL010=y
35*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
36*4882a593Smuzhiyun	help
37*4882a593Smuzhiyun	  Say Y here if you wish to use an AMBA PrimeCell UART as the system
38*4882a593Smuzhiyun	  console (the system console is the device which receives all kernel
39*4882a593Smuzhiyun	  messages and warnings and which allows logins in single user mode).
40*4882a593Smuzhiyun
41*4882a593Smuzhiyun	  Even if you say Y here, the currently visible framebuffer console
42*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
43*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
44*4882a593Smuzhiyun	  "console=ttyAM0". (Try "man bootparam" or see the documentation of
45*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
46*4882a593Smuzhiyun	  kernel at boot time.)
47*4882a593Smuzhiyun
48*4882a593Smuzhiyunconfig SERIAL_AMBA_PL011
49*4882a593Smuzhiyun	tristate "ARM AMBA PL011 serial port support"
50*4882a593Smuzhiyun	depends on ARM_AMBA
51*4882a593Smuzhiyun	select SERIAL_CORE
52*4882a593Smuzhiyun	help
53*4882a593Smuzhiyun	  This selects the ARM(R) AMBA(R) PrimeCell PL011 UART.  If you have
54*4882a593Smuzhiyun	  an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M
55*4882a593Smuzhiyun	  here.
56*4882a593Smuzhiyun
57*4882a593Smuzhiyun	  If unsure, say N.
58*4882a593Smuzhiyun
59*4882a593Smuzhiyunconfig SERIAL_AMBA_PL011_CONSOLE
60*4882a593Smuzhiyun	bool "Support for console on AMBA serial port"
61*4882a593Smuzhiyun	depends on SERIAL_AMBA_PL011=y
62*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
63*4882a593Smuzhiyun	select SERIAL_EARLYCON
64*4882a593Smuzhiyun	help
65*4882a593Smuzhiyun	  Say Y here if you wish to use an AMBA PrimeCell UART as the system
66*4882a593Smuzhiyun	  console (the system console is the device which receives all kernel
67*4882a593Smuzhiyun	  messages and warnings and which allows logins in single user mode).
68*4882a593Smuzhiyun
69*4882a593Smuzhiyun	  Even if you say Y here, the currently visible framebuffer console
70*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
71*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
72*4882a593Smuzhiyun	  "console=ttyAMA0". (Try "man bootparam" or see the documentation of
73*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
74*4882a593Smuzhiyun	  kernel at boot time.)
75*4882a593Smuzhiyun
76*4882a593Smuzhiyunconfig SERIAL_EARLYCON_ARM_SEMIHOST
77*4882a593Smuzhiyun	bool "Early console using ARM semihosting"
78*4882a593Smuzhiyun	depends on ARM64 || ARM
79*4882a593Smuzhiyun	select SERIAL_CORE
80*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
81*4882a593Smuzhiyun	select SERIAL_EARLYCON
82*4882a593Smuzhiyun	help
83*4882a593Smuzhiyun	  Support for early debug console using ARM semihosting. This enables
84*4882a593Smuzhiyun	  the console before standard serial driver is probed. This is enabled
85*4882a593Smuzhiyun	  with "earlycon=smh" on the kernel command line. The console is
86*4882a593Smuzhiyun	  enabled when early_param is processed.
87*4882a593Smuzhiyun
88*4882a593Smuzhiyunconfig SERIAL_EARLYCON_RISCV_SBI
89*4882a593Smuzhiyun	bool "Early console using RISC-V SBI"
90*4882a593Smuzhiyun	depends on RISCV_SBI_V01
91*4882a593Smuzhiyun	select SERIAL_CORE
92*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
93*4882a593Smuzhiyun	select SERIAL_EARLYCON
94*4882a593Smuzhiyun	help
95*4882a593Smuzhiyun	  Support for early debug console using RISC-V SBI. This enables
96*4882a593Smuzhiyun	  the console before standard serial driver is probed. This is enabled
97*4882a593Smuzhiyun	  with "earlycon=sbi" on the kernel command line. The console is
98*4882a593Smuzhiyun	  enabled when early_param is processed.
99*4882a593Smuzhiyun
100*4882a593Smuzhiyunconfig SERIAL_SB1250_DUART
101*4882a593Smuzhiyun	tristate "BCM1xxx on-chip DUART serial support"
102*4882a593Smuzhiyun	depends on SIBYTE_SB1xxx_SOC=y
103*4882a593Smuzhiyun	select SERIAL_CORE
104*4882a593Smuzhiyun	default y
105*4882a593Smuzhiyun	help
106*4882a593Smuzhiyun	  Support for the asynchronous serial interface (DUART) included in
107*4882a593Smuzhiyun	  the BCM1250 and derived System-On-a-Chip (SOC) devices.  Note that
108*4882a593Smuzhiyun	  the letter D in DUART stands for "dual", which is how the device
109*4882a593Smuzhiyun	  is implemented.  Depending on the SOC configuration there may be
110*4882a593Smuzhiyun	  one or more DUARTs available of which all are handled.
111*4882a593Smuzhiyun
112*4882a593Smuzhiyun	  If unsure, say Y.  To compile this driver as a module, choose M here:
113*4882a593Smuzhiyun	  the module will be called sb1250-duart.
114*4882a593Smuzhiyun
115*4882a593Smuzhiyunconfig SERIAL_SB1250_DUART_CONSOLE
116*4882a593Smuzhiyun	bool "Support for console on a BCM1xxx DUART serial port"
117*4882a593Smuzhiyun	depends on SERIAL_SB1250_DUART=y
118*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
119*4882a593Smuzhiyun	default y
120*4882a593Smuzhiyun	help
121*4882a593Smuzhiyun	  If you say Y here, it will be possible to use a serial port as the
122*4882a593Smuzhiyun	  system console (the system console is the device which receives all
123*4882a593Smuzhiyun	  kernel messages and warnings and which allows logins in single user
124*4882a593Smuzhiyun	  mode).
125*4882a593Smuzhiyun
126*4882a593Smuzhiyun	  If unsure, say Y.
127*4882a593Smuzhiyun
128*4882a593Smuzhiyunconfig SERIAL_ATMEL
129*4882a593Smuzhiyun	bool "AT91 on-chip serial port support"
130*4882a593Smuzhiyun	depends on ARCH_AT91 || COMPILE_TEST
131*4882a593Smuzhiyun	select SERIAL_CORE
132*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
133*4882a593Smuzhiyun	select MFD_AT91_USART
134*4882a593Smuzhiyun	help
135*4882a593Smuzhiyun	  This enables the driver for the on-chip UARTs of the Atmel
136*4882a593Smuzhiyun	  AT91 processors.
137*4882a593Smuzhiyun
138*4882a593Smuzhiyunconfig SERIAL_ATMEL_CONSOLE
139*4882a593Smuzhiyun	bool "Support for console on AT91 serial port"
140*4882a593Smuzhiyun	depends on SERIAL_ATMEL=y
141*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
142*4882a593Smuzhiyun	help
143*4882a593Smuzhiyun	  Say Y here if you wish to use an on-chip UART on a Atmel
144*4882a593Smuzhiyun	  AT91 processor as the system console (the system
145*4882a593Smuzhiyun	  console is the device which receives all kernel messages and
146*4882a593Smuzhiyun	  warnings and which allows logins in single user mode).
147*4882a593Smuzhiyun
148*4882a593Smuzhiyunconfig SERIAL_ATMEL_PDC
149*4882a593Smuzhiyun	bool "Support DMA transfers on AT91 serial port"
150*4882a593Smuzhiyun	depends on SERIAL_ATMEL
151*4882a593Smuzhiyun	default y
152*4882a593Smuzhiyun	help
153*4882a593Smuzhiyun	  Say Y here if you wish to use the PDC to do DMA transfers to
154*4882a593Smuzhiyun	  and from the Atmel AT91 serial port. In order to
155*4882a593Smuzhiyun	  actually use DMA transfers, make sure that the use_dma_tx
156*4882a593Smuzhiyun	  and use_dma_rx members in the atmel_uart_data struct is set
157*4882a593Smuzhiyun	  appropriately for each port.
158*4882a593Smuzhiyun
159*4882a593Smuzhiyun	  Note that break and error handling currently doesn't work
160*4882a593Smuzhiyun	  properly when DMA is enabled. Make sure that ports where
161*4882a593Smuzhiyun	  this matters don't use DMA.
162*4882a593Smuzhiyun
163*4882a593Smuzhiyunconfig SERIAL_ATMEL_TTYAT
164*4882a593Smuzhiyun	bool "Install as device ttyATn instead of ttySn"
165*4882a593Smuzhiyun	depends on SERIAL_ATMEL=y
166*4882a593Smuzhiyun	help
167*4882a593Smuzhiyun	  Say Y here if you wish to have the internal AT91 UARTs
168*4882a593Smuzhiyun	  appear as /dev/ttyATn (major 204, minor starting at 154)
169*4882a593Smuzhiyun	  instead of the normal /dev/ttySn (major 4, minor starting at
170*4882a593Smuzhiyun	  64). This is necessary if you also want other UARTs, such as
171*4882a593Smuzhiyun	  external 8250/16C550 compatible UARTs.
172*4882a593Smuzhiyun	  The ttySn nodes are legally reserved for the 8250 serial driver
173*4882a593Smuzhiyun	  but are often misused by other serial drivers.
174*4882a593Smuzhiyun
175*4882a593Smuzhiyun	  To use this, you should create suitable ttyATn device nodes in
176*4882a593Smuzhiyun	  /dev/, and pass "console=ttyATn" to the kernel.
177*4882a593Smuzhiyun
178*4882a593Smuzhiyun	  Say Y if you have an external 8250/16C550 UART.  If unsure, say N.
179*4882a593Smuzhiyun
180*4882a593Smuzhiyunconfig SERIAL_KGDB_NMI
181*4882a593Smuzhiyun	bool "Serial console over KGDB NMI debugger port"
182*4882a593Smuzhiyun	depends on KGDB_SERIAL_CONSOLE
183*4882a593Smuzhiyun	help
184*4882a593Smuzhiyun	  This special driver allows you to temporary use NMI debugger port
185*4882a593Smuzhiyun	  as a normal console (assuming that the port is attached to KGDB).
186*4882a593Smuzhiyun
187*4882a593Smuzhiyun	  Unlike KDB's disable_nmi command, with this driver you are always
188*4882a593Smuzhiyun	  able to go back to the debugger using KGDB escape sequence ($3#33).
189*4882a593Smuzhiyun	  This is because this console driver processes the input in NMI
190*4882a593Smuzhiyun	  context, and thus is able to intercept the magic sequence.
191*4882a593Smuzhiyun
192*4882a593Smuzhiyun	  Note that since the console interprets input and uses polling
193*4882a593Smuzhiyun	  communication methods, for things like PPP you still must fully
194*4882a593Smuzhiyun	  detach debugger port from the KGDB NMI (i.e. disable_nmi), and
195*4882a593Smuzhiyun	  use raw console.
196*4882a593Smuzhiyun
197*4882a593Smuzhiyun	  If unsure, say N.
198*4882a593Smuzhiyun
199*4882a593Smuzhiyunconfig SERIAL_MESON
200*4882a593Smuzhiyun	tristate "Meson serial port support"
201*4882a593Smuzhiyun	depends on ARCH_MESON
202*4882a593Smuzhiyun	select SERIAL_CORE
203*4882a593Smuzhiyun	help
204*4882a593Smuzhiyun	  This enables the driver for the on-chip UARTs of the Amlogic
205*4882a593Smuzhiyun	  MesonX processors.
206*4882a593Smuzhiyun
207*4882a593Smuzhiyunconfig SERIAL_MESON_CONSOLE
208*4882a593Smuzhiyun	bool "Support for console on meson"
209*4882a593Smuzhiyun	depends on SERIAL_MESON
210*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
211*4882a593Smuzhiyun	select SERIAL_EARLYCON
212*4882a593Smuzhiyun	help
213*4882a593Smuzhiyun	  Say Y here if you wish to use a Amlogic MesonX UART as the
214*4882a593Smuzhiyun	  system console (the system console is the device which
215*4882a593Smuzhiyun	  receives all kernel messages and warnings and which allows
216*4882a593Smuzhiyun	  logins in single user mode) as /dev/ttyAMLx.
217*4882a593Smuzhiyun
218*4882a593Smuzhiyunconfig SERIAL_CLPS711X
219*4882a593Smuzhiyun	tristate "CLPS711X serial port support"
220*4882a593Smuzhiyun	depends on ARCH_CLPS711X || COMPILE_TEST
221*4882a593Smuzhiyun	select SERIAL_CORE
222*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
223*4882a593Smuzhiyun	help
224*4882a593Smuzhiyun	  This enables the driver for the on-chip UARTs of the Cirrus
225*4882a593Smuzhiyun	  Logic EP711x/EP721x/EP731x processors.
226*4882a593Smuzhiyun
227*4882a593Smuzhiyunconfig SERIAL_CLPS711X_CONSOLE
228*4882a593Smuzhiyun	bool "Support for console on CLPS711X serial port"
229*4882a593Smuzhiyun	depends on SERIAL_CLPS711X=y
230*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
231*4882a593Smuzhiyun	help
232*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
233*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
234*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
235*4882a593Smuzhiyun	  "console=ttyCL1".
236*4882a593Smuzhiyun
237*4882a593Smuzhiyunconfig SERIAL_SAMSUNG
238*4882a593Smuzhiyun	tristate "Samsung SoC serial support"
239*4882a593Smuzhiyun	select SERIAL_CORE
240*4882a593Smuzhiyun	help
241*4882a593Smuzhiyun	  Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
242*4882a593Smuzhiyun	  providing /dev/ttySAC0, 1 and 2 (note, some machines may not
243*4882a593Smuzhiyun	  provide all of these ports, depending on how the serial port
244*4882a593Smuzhiyun	  pins are configured.
245*4882a593Smuzhiyun
246*4882a593Smuzhiyunconfig SERIAL_SAMSUNG_UARTS_4
247*4882a593Smuzhiyun	bool
248*4882a593Smuzhiyun	depends on SERIAL_SAMSUNG
249*4882a593Smuzhiyun	default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
250*4882a593Smuzhiyun	help
251*4882a593Smuzhiyun	  Internal node for the common case of 4 Samsung compatible UARTs
252*4882a593Smuzhiyun
253*4882a593Smuzhiyunconfig SERIAL_SAMSUNG_UARTS
254*4882a593Smuzhiyun	int
255*4882a593Smuzhiyun	depends on SERIAL_SAMSUNG
256*4882a593Smuzhiyun	default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
257*4882a593Smuzhiyun	default 3
258*4882a593Smuzhiyun	help
259*4882a593Smuzhiyun	  Select the number of available UART ports for the Samsung S3C
260*4882a593Smuzhiyun	  serial driver
261*4882a593Smuzhiyun
262*4882a593Smuzhiyunconfig SERIAL_SAMSUNG_CONSOLE
263*4882a593Smuzhiyun	bool "Support for console on Samsung SoC serial port"
264*4882a593Smuzhiyun	depends on SERIAL_SAMSUNG=y
265*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
266*4882a593Smuzhiyun	select SERIAL_EARLYCON
267*4882a593Smuzhiyun	help
268*4882a593Smuzhiyun	  Allow selection of the S3C24XX on-board serial ports for use as
269*4882a593Smuzhiyun	  an virtual console.
270*4882a593Smuzhiyun
271*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
272*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
273*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
274*4882a593Smuzhiyun	  "console=ttySACx". (Try "man bootparam" or see the documentation of
275*4882a593Smuzhiyun	  your boot loader about how to pass options to the kernel at
276*4882a593Smuzhiyun	  boot time.)
277*4882a593Smuzhiyun
278*4882a593Smuzhiyunconfig SERIAL_SIRFSOC
279*4882a593Smuzhiyun	tristate "SiRF SoC Platform Serial port support"
280*4882a593Smuzhiyun	depends on ARCH_SIRF
281*4882a593Smuzhiyun	select SERIAL_CORE
282*4882a593Smuzhiyun	help
283*4882a593Smuzhiyun	  Support for the on-chip UART on the CSR SiRFprimaII series,
284*4882a593Smuzhiyun	  providing /dev/ttySiRF0, 1 and 2 (note, some machines may not
285*4882a593Smuzhiyun	  provide all of these ports, depending on how the serial port
286*4882a593Smuzhiyun	  pins are configured).
287*4882a593Smuzhiyun
288*4882a593Smuzhiyunconfig SERIAL_SIRFSOC_CONSOLE
289*4882a593Smuzhiyun	bool "Support for console on SiRF SoC serial port"
290*4882a593Smuzhiyun	depends on SERIAL_SIRFSOC=y
291*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
292*4882a593Smuzhiyun	help
293*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
294*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
295*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
296*4882a593Smuzhiyun	  "console=ttySiRFx". (Try "man bootparam" or see the documentation of
297*4882a593Smuzhiyun	  your boot loader about how to pass options to the kernel at
298*4882a593Smuzhiyun	  boot time.)
299*4882a593Smuzhiyun
300*4882a593Smuzhiyunconfig SERIAL_TEGRA
301*4882a593Smuzhiyun	tristate "NVIDIA Tegra20/30 SoC serial controller"
302*4882a593Smuzhiyun	depends on ARCH_TEGRA && TEGRA20_APB_DMA
303*4882a593Smuzhiyun	select SERIAL_CORE
304*4882a593Smuzhiyun	help
305*4882a593Smuzhiyun	  Support for the on-chip UARTs on the NVIDIA Tegra series SOCs
306*4882a593Smuzhiyun	  providing /dev/ttyTHS0, 1, 2, 3 and 4 (note, some machines may not
307*4882a593Smuzhiyun	  provide all of these ports, depending on how the serial port
308*4882a593Smuzhiyun	  are enabled). This driver uses the APB DMA to achieve higher baudrate
309*4882a593Smuzhiyun	  and better performance.
310*4882a593Smuzhiyun
311*4882a593Smuzhiyunconfig SERIAL_TEGRA_TCU
312*4882a593Smuzhiyun	tristate "NVIDIA Tegra Combined UART"
313*4882a593Smuzhiyun	depends on ARCH_TEGRA && TEGRA_HSP_MBOX
314*4882a593Smuzhiyun	select SERIAL_CORE
315*4882a593Smuzhiyun	help
316*4882a593Smuzhiyun	  Support for the mailbox-based TCU (Tegra Combined UART) serial port.
317*4882a593Smuzhiyun	  TCU is a virtual serial port that allows multiplexing multiple data
318*4882a593Smuzhiyun	  streams into a single hardware serial port.
319*4882a593Smuzhiyun
320*4882a593Smuzhiyunconfig SERIAL_TEGRA_TCU_CONSOLE
321*4882a593Smuzhiyun	bool "Support for console on a Tegra TCU serial port"
322*4882a593Smuzhiyun	depends on SERIAL_TEGRA_TCU=y
323*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
324*4882a593Smuzhiyun	default y
325*4882a593Smuzhiyun	help
326*4882a593Smuzhiyun	  If you say Y here, it will be possible to use a the Tegra TCU as the
327*4882a593Smuzhiyun	  system console (the system console is the device which receives all
328*4882a593Smuzhiyun	  kernel messages and warnings and which allows logins in single user
329*4882a593Smuzhiyun	  mode).
330*4882a593Smuzhiyun
331*4882a593Smuzhiyun	  If unsure, say Y.
332*4882a593Smuzhiyun
333*4882a593Smuzhiyunconfig SERIAL_MAX3100
334*4882a593Smuzhiyun	tristate "MAX3100 support"
335*4882a593Smuzhiyun	depends on SPI
336*4882a593Smuzhiyun	select SERIAL_CORE
337*4882a593Smuzhiyun	help
338*4882a593Smuzhiyun	  MAX3100 chip support
339*4882a593Smuzhiyun
340*4882a593Smuzhiyunconfig SERIAL_MAX310X
341*4882a593Smuzhiyun	tristate "MAX310X support"
342*4882a593Smuzhiyun	depends on SPI_MASTER
343*4882a593Smuzhiyun	select SERIAL_CORE
344*4882a593Smuzhiyun	select REGMAP_SPI if SPI_MASTER
345*4882a593Smuzhiyun	help
346*4882a593Smuzhiyun	  This selects support for an advanced UART from Maxim (Dallas).
347*4882a593Smuzhiyun	  Supported ICs are MAX3107, MAX3108, MAX3109, MAX14830.
348*4882a593Smuzhiyun	  Each IC contains 128 words each of receive and transmit FIFO
349*4882a593Smuzhiyun	  that can be controlled through I2C or high-speed SPI.
350*4882a593Smuzhiyun
351*4882a593Smuzhiyun	  Say Y here if you want to support this ICs.
352*4882a593Smuzhiyun
353*4882a593Smuzhiyunconfig SERIAL_DZ
354*4882a593Smuzhiyun	bool "DECstation DZ serial driver"
355*4882a593Smuzhiyun	depends on MACH_DECSTATION && 32BIT
356*4882a593Smuzhiyun	select SERIAL_CORE
357*4882a593Smuzhiyun	default y
358*4882a593Smuzhiyun	help
359*4882a593Smuzhiyun	  DZ11-family serial controllers for DECstations and VAXstations,
360*4882a593Smuzhiyun	  including the DC7085, M7814, and M7819.
361*4882a593Smuzhiyun
362*4882a593Smuzhiyunconfig SERIAL_DZ_CONSOLE
363*4882a593Smuzhiyun	bool "Support console on DECstation DZ serial driver"
364*4882a593Smuzhiyun	depends on SERIAL_DZ=y
365*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
366*4882a593Smuzhiyun	default y
367*4882a593Smuzhiyun	help
368*4882a593Smuzhiyun	  If you say Y here, it will be possible to use a serial port as the
369*4882a593Smuzhiyun	  system console (the system console is the device which receives all
370*4882a593Smuzhiyun	  kernel messages and warnings and which allows logins in single user
371*4882a593Smuzhiyun	  mode).
372*4882a593Smuzhiyun
373*4882a593Smuzhiyun	  Note that the firmware uses ttyS3 as the serial console on
374*4882a593Smuzhiyun	  DECstations that use this driver.
375*4882a593Smuzhiyun
376*4882a593Smuzhiyun	  If unsure, say Y.
377*4882a593Smuzhiyun
378*4882a593Smuzhiyunconfig SERIAL_ZS
379*4882a593Smuzhiyun	tristate "DECstation Z85C30 serial support"
380*4882a593Smuzhiyun	depends on MACH_DECSTATION
381*4882a593Smuzhiyun	select SERIAL_CORE
382*4882a593Smuzhiyun	default y
383*4882a593Smuzhiyun	help
384*4882a593Smuzhiyun	  Support for the Zilog 85C350 serial communications controller used
385*4882a593Smuzhiyun	  for serial ports in newer DECstation systems.  These include the
386*4882a593Smuzhiyun	  DECsystem 5900 and all models of the DECstation and DECsystem 5000
387*4882a593Smuzhiyun	  systems except from model 200.
388*4882a593Smuzhiyun
389*4882a593Smuzhiyun	  If unsure, say Y.  To compile this driver as a module, choose M here:
390*4882a593Smuzhiyun	  the module will be called zs.
391*4882a593Smuzhiyun
392*4882a593Smuzhiyunconfig SERIAL_ZS_CONSOLE
393*4882a593Smuzhiyun	bool "Support for console on a DECstation Z85C30 serial port"
394*4882a593Smuzhiyun	depends on SERIAL_ZS=y
395*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
396*4882a593Smuzhiyun	default y
397*4882a593Smuzhiyun	help
398*4882a593Smuzhiyun	  If you say Y here, it will be possible to use a serial port as the
399*4882a593Smuzhiyun	  system console (the system console is the device which receives all
400*4882a593Smuzhiyun	  kernel messages and warnings and which allows logins in single user
401*4882a593Smuzhiyun	  mode).
402*4882a593Smuzhiyun
403*4882a593Smuzhiyun	  Note that the firmware uses ttyS1 as the serial console on the
404*4882a593Smuzhiyun	  Maxine and ttyS3 on the others using this driver.
405*4882a593Smuzhiyun
406*4882a593Smuzhiyun	  If unsure, say Y.
407*4882a593Smuzhiyun
408*4882a593Smuzhiyunconfig SERIAL_21285
409*4882a593Smuzhiyun	tristate "DC21285 serial port support"
410*4882a593Smuzhiyun	depends on FOOTBRIDGE
411*4882a593Smuzhiyun	select SERIAL_CORE
412*4882a593Smuzhiyun	help
413*4882a593Smuzhiyun	  If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
414*4882a593Smuzhiyun	  PCI bridge you can enable its onboard serial port by enabling this
415*4882a593Smuzhiyun	  option.
416*4882a593Smuzhiyun
417*4882a593Smuzhiyunconfig SERIAL_21285_CONSOLE
418*4882a593Smuzhiyun	bool "Console on DC21285 serial port"
419*4882a593Smuzhiyun	depends on SERIAL_21285=y
420*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
421*4882a593Smuzhiyun	help
422*4882a593Smuzhiyun	  If you have enabled the serial port on the 21285 footbridge you can
423*4882a593Smuzhiyun	  make it the console by answering Y to this option.
424*4882a593Smuzhiyun
425*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
426*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
427*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
428*4882a593Smuzhiyun	  "console=ttyFB". (Try "man bootparam" or see the documentation of
429*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
430*4882a593Smuzhiyun	  kernel at boot time.)
431*4882a593Smuzhiyun
432*4882a593Smuzhiyunconfig SERIAL_PXA
433*4882a593Smuzhiyun	bool "PXA serial port support (DEPRECATED)"
434*4882a593Smuzhiyun	depends on ARCH_PXA || ARCH_MMP
435*4882a593Smuzhiyun	select SERIAL_CORE
436*4882a593Smuzhiyun	select SERIAL_8250_PXA if SERIAL_8250=y
437*4882a593Smuzhiyun	select SERIAL_PXA_NON8250 if !SERIAL_8250=y
438*4882a593Smuzhiyun	help
439*4882a593Smuzhiyun	  If you have a machine based on an Intel XScale PXA2xx CPU you
440*4882a593Smuzhiyun	  can enable its onboard serial ports by enabling this option.
441*4882a593Smuzhiyun
442*4882a593Smuzhiyun	  Unless you have a specific need, you should use SERIAL_8250_PXA
443*4882a593Smuzhiyun	  instead of this.
444*4882a593Smuzhiyun
445*4882a593Smuzhiyunconfig SERIAL_PXA_NON8250
446*4882a593Smuzhiyun	bool
447*4882a593Smuzhiyun	depends on !SERIAL_8250
448*4882a593Smuzhiyun
449*4882a593Smuzhiyunconfig SERIAL_PXA_CONSOLE
450*4882a593Smuzhiyun	bool "Console on PXA serial port (DEPRECATED)"
451*4882a593Smuzhiyun	depends on SERIAL_PXA
452*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
453*4882a593Smuzhiyun	select SERIAL_8250_CONSOLE if SERIAL_8250=y
454*4882a593Smuzhiyun	help
455*4882a593Smuzhiyun	  If you have enabled the serial port on the Intel XScale PXA
456*4882a593Smuzhiyun	  CPU you can make it the console by answering Y to this option.
457*4882a593Smuzhiyun
458*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
459*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
460*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
461*4882a593Smuzhiyun	  "console=ttySA0". (Try "man bootparam" or see the documentation of
462*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
463*4882a593Smuzhiyun	  kernel at boot time.)
464*4882a593Smuzhiyun
465*4882a593Smuzhiyun	  Unless you have a specific need, you should use SERIAL_8250_PXA
466*4882a593Smuzhiyun	  and SERIAL_8250_CONSOLE instead of this.
467*4882a593Smuzhiyun
468*4882a593Smuzhiyunconfig SERIAL_SA1100
469*4882a593Smuzhiyun	bool "SA1100 serial port support"
470*4882a593Smuzhiyun	depends on ARCH_SA1100
471*4882a593Smuzhiyun	select SERIAL_CORE
472*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
473*4882a593Smuzhiyun	help
474*4882a593Smuzhiyun	  If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
475*4882a593Smuzhiyun	  can enable its onboard serial port by enabling this option.
476*4882a593Smuzhiyun	  Please read <file:Documentation/arm/sa1100/serial_uart.rst> for further
477*4882a593Smuzhiyun	  info.
478*4882a593Smuzhiyun
479*4882a593Smuzhiyunconfig SERIAL_SA1100_CONSOLE
480*4882a593Smuzhiyun	bool "Console on SA1100 serial port"
481*4882a593Smuzhiyun	depends on SERIAL_SA1100
482*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
483*4882a593Smuzhiyun	help
484*4882a593Smuzhiyun	  If you have enabled the serial port on the SA1100/SA1110 StrongARM
485*4882a593Smuzhiyun	  CPU you can make it the console by answering Y to this option.
486*4882a593Smuzhiyun
487*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
488*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
489*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
490*4882a593Smuzhiyun	  "console=ttySA0". (Try "man bootparam" or see the documentation of
491*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
492*4882a593Smuzhiyun	  kernel at boot time.)
493*4882a593Smuzhiyun
494*4882a593Smuzhiyunconfig SERIAL_IMX
495*4882a593Smuzhiyun	tristate "IMX serial port support"
496*4882a593Smuzhiyun	depends on ARCH_MXC || COMPILE_TEST
497*4882a593Smuzhiyun	select SERIAL_CORE
498*4882a593Smuzhiyun	select RATIONAL
499*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
500*4882a593Smuzhiyun	help
501*4882a593Smuzhiyun	  If you have a machine based on a Motorola IMX CPU you
502*4882a593Smuzhiyun	  can enable its onboard serial port by enabling this option.
503*4882a593Smuzhiyun
504*4882a593Smuzhiyunconfig SERIAL_IMX_CONSOLE
505*4882a593Smuzhiyun	tristate "Console on IMX serial port"
506*4882a593Smuzhiyun	depends on SERIAL_IMX
507*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
508*4882a593Smuzhiyun	help
509*4882a593Smuzhiyun	  If you have enabled the serial port on the Freescale IMX
510*4882a593Smuzhiyun	  CPU you can make it the console by answering Y/M to this option.
511*4882a593Smuzhiyun
512*4882a593Smuzhiyun	  Even if you say Y/M here, the currently visible virtual console
513*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
514*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
515*4882a593Smuzhiyun	  "console=ttymxc0". (Try "man bootparam" or see the documentation of
516*4882a593Smuzhiyun	  your bootloader about how to pass options to the kernel at boot time.)
517*4882a593Smuzhiyun
518*4882a593Smuzhiyunconfig SERIAL_IMX_EARLYCON
519*4882a593Smuzhiyun	bool "Earlycon on IMX serial port"
520*4882a593Smuzhiyun	depends on ARCH_MXC || COMPILE_TEST
521*4882a593Smuzhiyun	depends on OF
522*4882a593Smuzhiyun	select SERIAL_EARLYCON
523*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
524*4882a593Smuzhiyun	default y if SERIAL_IMX_CONSOLE
525*4882a593Smuzhiyun	help
526*4882a593Smuzhiyun	  If you have enabled the earlycon on the Freescale IMX
527*4882a593Smuzhiyun	  CPU you can make it the earlycon by answering Y to this option.
528*4882a593Smuzhiyun
529*4882a593Smuzhiyunconfig SERIAL_UARTLITE
530*4882a593Smuzhiyun	tristate "Xilinx uartlite serial port support"
531*4882a593Smuzhiyun	depends on HAS_IOMEM
532*4882a593Smuzhiyun	select SERIAL_CORE
533*4882a593Smuzhiyun	help
534*4882a593Smuzhiyun	  Say Y here if you want to use the Xilinx uartlite serial controller.
535*4882a593Smuzhiyun
536*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
537*4882a593Smuzhiyun	  module will be called uartlite.
538*4882a593Smuzhiyun
539*4882a593Smuzhiyunconfig SERIAL_UARTLITE_CONSOLE
540*4882a593Smuzhiyun	bool "Support for console on Xilinx uartlite serial port"
541*4882a593Smuzhiyun	depends on SERIAL_UARTLITE=y
542*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
543*4882a593Smuzhiyun	select SERIAL_EARLYCON
544*4882a593Smuzhiyun	help
545*4882a593Smuzhiyun	  Say Y here if you wish to use a Xilinx uartlite as the system
546*4882a593Smuzhiyun	  console (the system console is the device which receives all kernel
547*4882a593Smuzhiyun	  messages and warnings and which allows logins in single user mode).
548*4882a593Smuzhiyun
549*4882a593Smuzhiyunconfig SERIAL_UARTLITE_NR_UARTS
550*4882a593Smuzhiyun	int "Maximum number of uartlite serial ports"
551*4882a593Smuzhiyun	depends on SERIAL_UARTLITE
552*4882a593Smuzhiyun	range 1 256
553*4882a593Smuzhiyun	default 1
554*4882a593Smuzhiyun	help
555*4882a593Smuzhiyun	  Set this to the number of uartlites in your system, or the number
556*4882a593Smuzhiyun	  you think you might implement.
557*4882a593Smuzhiyun
558*4882a593Smuzhiyunconfig SERIAL_SUNCORE
559*4882a593Smuzhiyun	bool
560*4882a593Smuzhiyun	depends on SPARC
561*4882a593Smuzhiyun	select SERIAL_CORE
562*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
563*4882a593Smuzhiyun	default y
564*4882a593Smuzhiyun
565*4882a593Smuzhiyunconfig SERIAL_SUNZILOG
566*4882a593Smuzhiyun	tristate "Sun Zilog8530 serial support"
567*4882a593Smuzhiyun	depends on SPARC
568*4882a593Smuzhiyun	help
569*4882a593Smuzhiyun	  This driver supports the Zilog8530 serial ports found on many Sparc
570*4882a593Smuzhiyun	  systems.  Say Y or M if you want to be able to these serial ports.
571*4882a593Smuzhiyun
572*4882a593Smuzhiyunconfig SERIAL_SUNZILOG_CONSOLE
573*4882a593Smuzhiyun	bool "Console on Sun Zilog8530 serial port"
574*4882a593Smuzhiyun	depends on SERIAL_SUNZILOG=y
575*4882a593Smuzhiyun	help
576*4882a593Smuzhiyun	  If you would like to be able to use the Zilog8530 serial port
577*4882a593Smuzhiyun	  on your Sparc system as the console, you can do so by answering
578*4882a593Smuzhiyun	  Y to this option.
579*4882a593Smuzhiyun
580*4882a593Smuzhiyunconfig SERIAL_SUNSU
581*4882a593Smuzhiyun	tristate "Sun SU serial support"
582*4882a593Smuzhiyun	depends on SPARC && PCI
583*4882a593Smuzhiyun	help
584*4882a593Smuzhiyun	  This driver supports the 8250 serial ports that run the keyboard and
585*4882a593Smuzhiyun	  mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
586*4882a593Smuzhiyun	  to these serial ports.
587*4882a593Smuzhiyun
588*4882a593Smuzhiyunconfig SERIAL_SUNSU_CONSOLE
589*4882a593Smuzhiyun	bool "Console on Sun SU serial port"
590*4882a593Smuzhiyun	depends on SERIAL_SUNSU=y
591*4882a593Smuzhiyun	help
592*4882a593Smuzhiyun	  If you would like to be able to use the SU serial port
593*4882a593Smuzhiyun	  on your Sparc system as the console, you can do so by answering
594*4882a593Smuzhiyun	  Y to this option.
595*4882a593Smuzhiyun
596*4882a593Smuzhiyunconfig SERIAL_MUX
597*4882a593Smuzhiyun	tristate "Serial MUX support"
598*4882a593Smuzhiyun	depends on GSC
599*4882a593Smuzhiyun	select SERIAL_CORE
600*4882a593Smuzhiyun	default y
601*4882a593Smuzhiyun	help
602*4882a593Smuzhiyun	  Saying Y here will enable the hardware MUX serial driver for
603*4882a593Smuzhiyun	  the Nova, K class systems and D class with a 'remote control card'.
604*4882a593Smuzhiyun	  The hardware MUX is not 8250/16550 compatible therefore the
605*4882a593Smuzhiyun	  /dev/ttyB0 device is shared between the Serial MUX and the PDC
606*4882a593Smuzhiyun	  software console. The following steps need to be completed to use
607*4882a593Smuzhiyun	  the Serial MUX:
608*4882a593Smuzhiyun
609*4882a593Smuzhiyun	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
610*4882a593Smuzhiyun	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
611*4882a593Smuzhiyun	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
612*4882a593Smuzhiyun		 root on this console.)
613*4882a593Smuzhiyun	    4. Change the kernel command console parameter to: console=ttyB0
614*4882a593Smuzhiyun
615*4882a593Smuzhiyunconfig SERIAL_MUX_CONSOLE
616*4882a593Smuzhiyun	bool "Support for console on serial MUX"
617*4882a593Smuzhiyun	depends on SERIAL_MUX=y
618*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
619*4882a593Smuzhiyun	default y
620*4882a593Smuzhiyun
621*4882a593Smuzhiyunconfig PDC_CONSOLE
622*4882a593Smuzhiyun	bool "PDC software console support"
623*4882a593Smuzhiyun	depends on PARISC && !SERIAL_MUX && VT
624*4882a593Smuzhiyun	help
625*4882a593Smuzhiyun	  Saying Y here will enable the software based PDC console to be
626*4882a593Smuzhiyun	  used as the system console.  This is useful for machines in
627*4882a593Smuzhiyun	  which the hardware based console has not been written yet.  The
628*4882a593Smuzhiyun	  following steps must be completed to use the PDC console:
629*4882a593Smuzhiyun
630*4882a593Smuzhiyun	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
631*4882a593Smuzhiyun	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
632*4882a593Smuzhiyun	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
633*4882a593Smuzhiyun		 root on this console.)
634*4882a593Smuzhiyun	    4. Change the kernel command console parameter to: console=ttyB0
635*4882a593Smuzhiyun
636*4882a593Smuzhiyunconfig SERIAL_SUNSAB
637*4882a593Smuzhiyun	tristate "Sun Siemens SAB82532 serial support"
638*4882a593Smuzhiyun	depends on SPARC && PCI
639*4882a593Smuzhiyun	help
640*4882a593Smuzhiyun	  This driver supports the Siemens SAB82532 DUSCC serial ports on newer
641*4882a593Smuzhiyun	  (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
642*4882a593Smuzhiyun	  serial ports.
643*4882a593Smuzhiyun
644*4882a593Smuzhiyunconfig SERIAL_SUNSAB_CONSOLE
645*4882a593Smuzhiyun	bool "Console on Sun Siemens SAB82532 serial port"
646*4882a593Smuzhiyun	depends on SERIAL_SUNSAB=y
647*4882a593Smuzhiyun	help
648*4882a593Smuzhiyun	  If you would like to be able to use the SAB82532 serial port
649*4882a593Smuzhiyun	  on your Sparc system as the console, you can do so by answering
650*4882a593Smuzhiyun	  Y to this option.
651*4882a593Smuzhiyun
652*4882a593Smuzhiyunconfig SERIAL_SUNHV
653*4882a593Smuzhiyun	bool "Sun4v Hypervisor Console support"
654*4882a593Smuzhiyun	depends on SPARC64
655*4882a593Smuzhiyun	help
656*4882a593Smuzhiyun	  This driver supports the console device found on SUN4V Sparc
657*4882a593Smuzhiyun	  systems.  Say Y if you want to be able to use this device.
658*4882a593Smuzhiyun
659*4882a593Smuzhiyunconfig SERIAL_IP22_ZILOG
660*4882a593Smuzhiyun	tristate "SGI Zilog8530 serial support"
661*4882a593Smuzhiyun	depends on SGI_HAS_ZILOG
662*4882a593Smuzhiyun	select SERIAL_CORE
663*4882a593Smuzhiyun	help
664*4882a593Smuzhiyun	  This driver supports the Zilog8530 serial ports found on SGI
665*4882a593Smuzhiyun	  systems.  Say Y or M if you want to be able to these serial ports.
666*4882a593Smuzhiyun
667*4882a593Smuzhiyunconfig SERIAL_IP22_ZILOG_CONSOLE
668*4882a593Smuzhiyun	bool "Console on SGI Zilog8530 serial port"
669*4882a593Smuzhiyun	depends on SERIAL_IP22_ZILOG=y
670*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
671*4882a593Smuzhiyun
672*4882a593Smuzhiyunconfig SERIAL_SH_SCI
673*4882a593Smuzhiyun	tristate "SuperH SCI(F) serial port support"
674*4882a593Smuzhiyun	depends on SUPERH || ARCH_RENESAS || H8300 || COMPILE_TEST
675*4882a593Smuzhiyun	select SERIAL_CORE
676*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
677*4882a593Smuzhiyun
678*4882a593Smuzhiyunconfig SERIAL_SH_SCI_NR_UARTS
679*4882a593Smuzhiyun	int "Maximum number of SCI(F) serial ports" if EXPERT
680*4882a593Smuzhiyun	range 1 64 if 64BIT
681*4882a593Smuzhiyun	range 1 32 if !64BIT
682*4882a593Smuzhiyun	depends on SERIAL_SH_SCI
683*4882a593Smuzhiyun	default "3" if H8300
684*4882a593Smuzhiyun	default "10" if SUPERH
685*4882a593Smuzhiyun	default "18" if ARCH_RENESAS
686*4882a593Smuzhiyun	default "2"
687*4882a593Smuzhiyun
688*4882a593Smuzhiyunconfig SERIAL_SH_SCI_CONSOLE
689*4882a593Smuzhiyun	bool "Support for console on SuperH SCI(F)" if EXPERT
690*4882a593Smuzhiyun	depends on SERIAL_SH_SCI=y
691*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
692*4882a593Smuzhiyun	default y
693*4882a593Smuzhiyun
694*4882a593Smuzhiyunconfig SERIAL_SH_SCI_EARLYCON
695*4882a593Smuzhiyun	bool "Support for early console on SuperH SCI(F)" if EXPERT
696*4882a593Smuzhiyun	depends on SERIAL_SH_SCI=y
697*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
698*4882a593Smuzhiyun	select SERIAL_EARLYCON
699*4882a593Smuzhiyun	default ARCH_RENESAS || H8300
700*4882a593Smuzhiyun
701*4882a593Smuzhiyunconfig SERIAL_SH_SCI_DMA
702*4882a593Smuzhiyun	bool "DMA support" if EXPERT
703*4882a593Smuzhiyun	depends on SERIAL_SH_SCI && DMA_ENGINE
704*4882a593Smuzhiyun	default ARCH_RENESAS
705*4882a593Smuzhiyun
706*4882a593Smuzhiyunconfig SERIAL_PNX8XXX
707*4882a593Smuzhiyun	bool "Enable PNX8XXX SoCs' UART Support"
708*4882a593Smuzhiyun	depends on SOC_PNX833X
709*4882a593Smuzhiyun	select SERIAL_CORE
710*4882a593Smuzhiyun	help
711*4882a593Smuzhiyun	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
712*4882a593Smuzhiyun	  to use serial ports, say Y.  Otherwise, say N.
713*4882a593Smuzhiyun
714*4882a593Smuzhiyunconfig SERIAL_PNX8XXX_CONSOLE
715*4882a593Smuzhiyun	bool "Enable PNX8XX0 serial console"
716*4882a593Smuzhiyun	depends on SERIAL_PNX8XXX
717*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
718*4882a593Smuzhiyun	help
719*4882a593Smuzhiyun	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
720*4882a593Smuzhiyun	  to use serial console, say Y. Otherwise, say N.
721*4882a593Smuzhiyun
722*4882a593Smuzhiyunconfig SERIAL_HS_LPC32XX
723*4882a593Smuzhiyun	tristate "LPC32XX high speed serial port support"
724*4882a593Smuzhiyun	depends on ARCH_LPC32XX || COMPILE_TEST
725*4882a593Smuzhiyun	depends on OF
726*4882a593Smuzhiyun	select SERIAL_CORE
727*4882a593Smuzhiyun	help
728*4882a593Smuzhiyun	  Support for the LPC32XX high speed serial ports (up to 900kbps).
729*4882a593Smuzhiyun	  Those are UARTs completely different from the Standard UARTs on the
730*4882a593Smuzhiyun	  LPC32XX SoC.
731*4882a593Smuzhiyun	  Choose M or Y here to build this driver.
732*4882a593Smuzhiyun
733*4882a593Smuzhiyunconfig SERIAL_HS_LPC32XX_CONSOLE
734*4882a593Smuzhiyun	bool "Enable LPC32XX high speed UART serial console"
735*4882a593Smuzhiyun	depends on SERIAL_HS_LPC32XX=y
736*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
737*4882a593Smuzhiyun	help
738*4882a593Smuzhiyun	  If you would like to be able to use one of the high speed serial
739*4882a593Smuzhiyun	  ports on the LPC32XX as the console, you can do so by answering
740*4882a593Smuzhiyun	  Y to this option.
741*4882a593Smuzhiyun
742*4882a593Smuzhiyunconfig SERIAL_CORE
743*4882a593Smuzhiyun	tristate
744*4882a593Smuzhiyun
745*4882a593Smuzhiyunconfig SERIAL_CORE_CONSOLE
746*4882a593Smuzhiyun	bool
747*4882a593Smuzhiyun
748*4882a593Smuzhiyunconfig CONSOLE_POLL
749*4882a593Smuzhiyun	bool
750*4882a593Smuzhiyun
751*4882a593Smuzhiyunconfig SERIAL_MCF
752*4882a593Smuzhiyun	bool "Coldfire serial support"
753*4882a593Smuzhiyun	depends on COLDFIRE
754*4882a593Smuzhiyun	select SERIAL_CORE
755*4882a593Smuzhiyun	help
756*4882a593Smuzhiyun	  This serial driver supports the Freescale Coldfire serial ports.
757*4882a593Smuzhiyun
758*4882a593Smuzhiyunconfig SERIAL_MCF_BAUDRATE
759*4882a593Smuzhiyun	int "Default baudrate for Coldfire serial ports"
760*4882a593Smuzhiyun	depends on SERIAL_MCF
761*4882a593Smuzhiyun	default 19200
762*4882a593Smuzhiyun	help
763*4882a593Smuzhiyun	  This setting lets you define what the default baudrate is for the
764*4882a593Smuzhiyun	  ColdFire serial ports. The usual default varies from board to board,
765*4882a593Smuzhiyun	  and this setting is a way of catering for that.
766*4882a593Smuzhiyun
767*4882a593Smuzhiyunconfig SERIAL_MCF_CONSOLE
768*4882a593Smuzhiyun	bool "Coldfire serial console support"
769*4882a593Smuzhiyun	depends on SERIAL_MCF
770*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
771*4882a593Smuzhiyun	help
772*4882a593Smuzhiyun	  Enable a ColdFire internal serial port to be the system console.
773*4882a593Smuzhiyun
774*4882a593Smuzhiyunconfig SERIAL_PMACZILOG
775*4882a593Smuzhiyun	tristate "Mac or PowerMac z85c30 ESCC support"
776*4882a593Smuzhiyun	depends on (M68K && MAC) || PPC_PMAC
777*4882a593Smuzhiyun	select SERIAL_CORE
778*4882a593Smuzhiyun	help
779*4882a593Smuzhiyun	  This driver supports the Zilog z85C30 serial ports found on
780*4882a593Smuzhiyun	  (Power)Mac machines.
781*4882a593Smuzhiyun	  Say Y or M if you want to be able to these serial ports.
782*4882a593Smuzhiyun
783*4882a593Smuzhiyunconfig SERIAL_PMACZILOG_TTYS
784*4882a593Smuzhiyun	bool "Use ttySn device nodes for Zilog z85c30"
785*4882a593Smuzhiyun	depends on SERIAL_PMACZILOG
786*4882a593Smuzhiyun	help
787*4882a593Smuzhiyun	  The pmac_zilog driver for the z85C30 chip on many powermacs
788*4882a593Smuzhiyun	  historically used the device numbers for /dev/ttySn.  The
789*4882a593Smuzhiyun	  8250 serial port driver also uses these numbers, which means
790*4882a593Smuzhiyun	  the two drivers being unable to coexist; you could not use
791*4882a593Smuzhiyun	  both z85C30 and 8250 type ports at the same time.
792*4882a593Smuzhiyun
793*4882a593Smuzhiyun	  If this option is not selected, the pmac_zilog driver will
794*4882a593Smuzhiyun	  use the device numbers allocated for /dev/ttyPZn.  This allows
795*4882a593Smuzhiyun	  the pmac_zilog and 8250 drivers to co-exist, but may cause
796*4882a593Smuzhiyun	  existing userspace setups to break.  Programs that need to
797*4882a593Smuzhiyun	  access the built-in serial ports on powermacs will need to
798*4882a593Smuzhiyun	  be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
799*4882a593Smuzhiyun
800*4882a593Smuzhiyun	  If you enable this option, any z85c30 ports in the system will
801*4882a593Smuzhiyun	  be registered as ttyS0 onwards as in the past, and you will be
802*4882a593Smuzhiyun	  unable to use the 8250 module for PCMCIA or other 16C550-style
803*4882a593Smuzhiyun	  UARTs.
804*4882a593Smuzhiyun
805*4882a593Smuzhiyun	  Say N unless you need the z85c30 ports on your (Power)Mac
806*4882a593Smuzhiyun	  to appear as /dev/ttySn.
807*4882a593Smuzhiyun
808*4882a593Smuzhiyunconfig SERIAL_PMACZILOG_CONSOLE
809*4882a593Smuzhiyun	bool "Console on Mac or PowerMac z85c30 serial port"
810*4882a593Smuzhiyun	depends on SERIAL_PMACZILOG=y
811*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
812*4882a593Smuzhiyun	help
813*4882a593Smuzhiyun	  If you would like to be able to use the z85c30 serial port
814*4882a593Smuzhiyun	  on your (Power)Mac as the console, you can do so by answering
815*4882a593Smuzhiyun	  Y to this option.
816*4882a593Smuzhiyun
817*4882a593Smuzhiyunconfig SERIAL_CPM
818*4882a593Smuzhiyun	tristate "CPM SCC/SMC serial port support"
819*4882a593Smuzhiyun	depends on CPM2 || CPM1
820*4882a593Smuzhiyun	select SERIAL_CORE
821*4882a593Smuzhiyun	help
822*4882a593Smuzhiyun	  This driver supports the SCC and SMC serial ports on Motorola
823*4882a593Smuzhiyun	  embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
824*4882a593Smuzhiyun
825*4882a593Smuzhiyunconfig SERIAL_CPM_CONSOLE
826*4882a593Smuzhiyun	bool "Support for console on CPM SCC/SMC serial port"
827*4882a593Smuzhiyun	depends on SERIAL_CPM=y
828*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
829*4882a593Smuzhiyun	help
830*4882a593Smuzhiyun	  Say Y here if you wish to use a SCC or SMC CPM UART as the system
831*4882a593Smuzhiyun	  console (the system console is the device which receives all kernel
832*4882a593Smuzhiyun	  messages and warnings and which allows logins in single user mode).
833*4882a593Smuzhiyun
834*4882a593Smuzhiyun	  Even if you say Y here, the currently visible framebuffer console
835*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
836*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
837*4882a593Smuzhiyun	  "console=ttyCPM0". (Try "man bootparam" or see the documentation of
838*4882a593Smuzhiyun	  your boot loader (lilo or loadlin) about how to pass options to the
839*4882a593Smuzhiyun	  kernel at boot time.)
840*4882a593Smuzhiyun
841*4882a593Smuzhiyunconfig SERIAL_PIC32
842*4882a593Smuzhiyun	tristate "Microchip PIC32 serial support"
843*4882a593Smuzhiyun	depends on MACH_PIC32
844*4882a593Smuzhiyun	select SERIAL_CORE
845*4882a593Smuzhiyun	help
846*4882a593Smuzhiyun	  If you have a PIC32, this driver supports the serial ports.
847*4882a593Smuzhiyun
848*4882a593Smuzhiyun	  Say Y or M to use PIC32 serial ports, otherwise say N. Note that
849*4882a593Smuzhiyun	  to use a serial port as a console, this must be included in kernel and
850*4882a593Smuzhiyun	  not as a module.
851*4882a593Smuzhiyun
852*4882a593Smuzhiyunconfig SERIAL_PIC32_CONSOLE
853*4882a593Smuzhiyun	bool "PIC32 serial console support"
854*4882a593Smuzhiyun	depends on SERIAL_PIC32
855*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
856*4882a593Smuzhiyun	help
857*4882a593Smuzhiyun	  If you have a PIC32, this driver supports the putting a console on one
858*4882a593Smuzhiyun	  of the serial ports.
859*4882a593Smuzhiyun
860*4882a593Smuzhiyun	  Say Y to use the PIC32 console, otherwise say N.
861*4882a593Smuzhiyun
862*4882a593Smuzhiyunconfig SERIAL_MPC52xx
863*4882a593Smuzhiyun	tristate "Freescale MPC52xx/MPC512x family PSC serial support"
864*4882a593Smuzhiyun	depends on PPC_MPC52xx || PPC_MPC512x
865*4882a593Smuzhiyun	select SERIAL_CORE
866*4882a593Smuzhiyun	help
867*4882a593Smuzhiyun	  This driver supports MPC52xx and MPC512x PSC serial ports. If you would
868*4882a593Smuzhiyun	  like to use them, you must answer Y or M to this option. Note that
869*4882a593Smuzhiyun	  for use as console, it must be included in kernel and not as a
870*4882a593Smuzhiyun	  module.
871*4882a593Smuzhiyun
872*4882a593Smuzhiyunconfig SERIAL_MPC52xx_CONSOLE
873*4882a593Smuzhiyun	bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port"
874*4882a593Smuzhiyun	depends on SERIAL_MPC52xx=y
875*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
876*4882a593Smuzhiyun	help
877*4882a593Smuzhiyun	  Select this options if you'd like to use one of the PSC serial port
878*4882a593Smuzhiyun	  of the Freescale MPC52xx family as a console.
879*4882a593Smuzhiyun
880*4882a593Smuzhiyunconfig SERIAL_MPC52xx_CONSOLE_BAUD
881*4882a593Smuzhiyun	int "Freescale MPC52xx/MPC512x family PSC serial port baud"
882*4882a593Smuzhiyun	depends on SERIAL_MPC52xx_CONSOLE=y
883*4882a593Smuzhiyun	default "9600"
884*4882a593Smuzhiyun	help
885*4882a593Smuzhiyun	  Select the MPC52xx console baud rate.
886*4882a593Smuzhiyun	  This value is only used if the bootloader doesn't pass in the
887*4882a593Smuzhiyun	  console baudrate
888*4882a593Smuzhiyun
889*4882a593Smuzhiyunconfig SERIAL_ICOM
890*4882a593Smuzhiyun	tristate "IBM Multiport Serial Adapter"
891*4882a593Smuzhiyun	depends on PCI && PPC_PSERIES
892*4882a593Smuzhiyun	select SERIAL_CORE
893*4882a593Smuzhiyun	select FW_LOADER
894*4882a593Smuzhiyun	help
895*4882a593Smuzhiyun	  This driver is for a family of multiport serial adapters
896*4882a593Smuzhiyun	  including 2 port RVX, 2 port internal modem, 4 port internal
897*4882a593Smuzhiyun	  modem and a split 1 port RVX and 1 port internal modem.
898*4882a593Smuzhiyun
899*4882a593Smuzhiyun	  This driver can also be built as a module.  If so, the module
900*4882a593Smuzhiyun	  will be called icom.
901*4882a593Smuzhiyun
902*4882a593Smuzhiyunconfig SERIAL_TXX9
903*4882a593Smuzhiyun	bool "TMPTX39XX/49XX SIO support"
904*4882a593Smuzhiyun	depends on HAS_TXX9_SERIAL
905*4882a593Smuzhiyun	select SERIAL_CORE
906*4882a593Smuzhiyun	default y
907*4882a593Smuzhiyun
908*4882a593Smuzhiyunconfig HAS_TXX9_SERIAL
909*4882a593Smuzhiyun	bool
910*4882a593Smuzhiyun
911*4882a593Smuzhiyunconfig SERIAL_TXX9_NR_UARTS
912*4882a593Smuzhiyun	int "Maximum number of TMPTX39XX/49XX SIO ports"
913*4882a593Smuzhiyun	depends on SERIAL_TXX9
914*4882a593Smuzhiyun	default "6"
915*4882a593Smuzhiyun
916*4882a593Smuzhiyunconfig SERIAL_TXX9_CONSOLE
917*4882a593Smuzhiyun	bool "TMPTX39XX/49XX SIO Console support"
918*4882a593Smuzhiyun	depends on SERIAL_TXX9=y
919*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
920*4882a593Smuzhiyun
921*4882a593Smuzhiyunconfig SERIAL_TXX9_STDSERIAL
922*4882a593Smuzhiyun	bool "TX39XX/49XX SIO act as standard serial"
923*4882a593Smuzhiyun	depends on !SERIAL_8250 && SERIAL_TXX9
924*4882a593Smuzhiyun
925*4882a593Smuzhiyunconfig SERIAL_VR41XX
926*4882a593Smuzhiyun	tristate "NEC VR4100 series Serial Interface Unit support"
927*4882a593Smuzhiyun	depends on CPU_VR41XX
928*4882a593Smuzhiyun	select SERIAL_CORE
929*4882a593Smuzhiyun	help
930*4882a593Smuzhiyun	  If you have a NEC VR4100 series processor and you want to use
931*4882a593Smuzhiyun	  Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU)
932*4882a593Smuzhiyun	  (not include VR4111/VR4121 DSIU), say Y.  Otherwise, say N.
933*4882a593Smuzhiyun
934*4882a593Smuzhiyunconfig SERIAL_VR41XX_CONSOLE
935*4882a593Smuzhiyun	bool "Enable NEC VR4100 series Serial Interface Unit console"
936*4882a593Smuzhiyun	depends on SERIAL_VR41XX=y
937*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
938*4882a593Smuzhiyun	help
939*4882a593Smuzhiyun	  If you have a NEC VR4100 series processor and you want to use
940*4882a593Smuzhiyun	  a console on a serial port, say Y.  Otherwise, say N.
941*4882a593Smuzhiyun
942*4882a593Smuzhiyunconfig SERIAL_JSM
943*4882a593Smuzhiyun	tristate "Digi International NEO and Classic PCI Support"
944*4882a593Smuzhiyun	depends on PCI
945*4882a593Smuzhiyun	select SERIAL_CORE
946*4882a593Smuzhiyun	help
947*4882a593Smuzhiyun	  This is a driver for Digi International's Neo and Classic series
948*4882a593Smuzhiyun	  of cards which provide multiple serial ports. You would need
949*4882a593Smuzhiyun	  something like this to connect more than two modems to your Linux
950*4882a593Smuzhiyun	  box, for instance in order to become a dial-in server. This driver
951*4882a593Smuzhiyun	  supports PCI boards only.
952*4882a593Smuzhiyun
953*4882a593Smuzhiyun	  If you have a card like this, say Y here, otherwise say N.
954*4882a593Smuzhiyun
955*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
956*4882a593Smuzhiyun	  module will be called jsm.
957*4882a593Smuzhiyun
958*4882a593Smuzhiyunconfig SERIAL_MSM
959*4882a593Smuzhiyun	tristate "MSM on-chip serial port support"
960*4882a593Smuzhiyun	depends on ARCH_QCOM
961*4882a593Smuzhiyun	select SERIAL_CORE
962*4882a593Smuzhiyun
963*4882a593Smuzhiyunconfig SERIAL_MSM_CONSOLE
964*4882a593Smuzhiyun	bool "MSM serial console support"
965*4882a593Smuzhiyun	depends on SERIAL_MSM=y
966*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
967*4882a593Smuzhiyun	select SERIAL_EARLYCON
968*4882a593Smuzhiyun
969*4882a593Smuzhiyunconfig SERIAL_MSM_GENI_EARLY_CONSOLE
970*4882a593Smuzhiyun	bool "MSM on-chip GENI HW based early console support"
971*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
972*4882a593Smuzhiyun	select SERIAL_EARLYCON
973*4882a593Smuzhiyun	help
974*4882a593Smuzhiyun	  Serial early console driver for Qualcomm Technologies Inc's GENI
975*4882a593Smuzhiyun	  based QUP hardware.
976*4882a593Smuzhiyun
977*4882a593Smuzhiyunconfig SERIAL_QCOM_GENI
978*4882a593Smuzhiyun	tristate "QCOM on-chip GENI based serial port support"
979*4882a593Smuzhiyun	depends on ARCH_QCOM || COMPILE_TEST
980*4882a593Smuzhiyun	depends on QCOM_GENI_SE
981*4882a593Smuzhiyun	select SERIAL_CORE
982*4882a593Smuzhiyun
983*4882a593Smuzhiyunconfig SERIAL_QCOM_GENI_CONSOLE
984*4882a593Smuzhiyun	bool "QCOM GENI Serial Console support"
985*4882a593Smuzhiyun	depends on SERIAL_QCOM_GENI
986*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
987*4882a593Smuzhiyun	select SERIAL_EARLYCON
988*4882a593Smuzhiyun	help
989*4882a593Smuzhiyun	  Serial console driver for Qualcomm Technologies Inc's GENI based
990*4882a593Smuzhiyun	  QUP hardware.
991*4882a593Smuzhiyun
992*4882a593Smuzhiyunconfig SERIAL_VT8500
993*4882a593Smuzhiyun	bool "VIA VT8500 on-chip serial port support"
994*4882a593Smuzhiyun	depends on ARCH_VT8500
995*4882a593Smuzhiyun	select SERIAL_CORE
996*4882a593Smuzhiyun
997*4882a593Smuzhiyunconfig SERIAL_VT8500_CONSOLE
998*4882a593Smuzhiyun	bool "VIA VT8500 serial console support"
999*4882a593Smuzhiyun	depends on SERIAL_VT8500=y
1000*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1001*4882a593Smuzhiyun
1002*4882a593Smuzhiyunconfig SERIAL_OMAP
1003*4882a593Smuzhiyun	tristate "OMAP serial port support"
1004*4882a593Smuzhiyun	depends on ARCH_OMAP2PLUS
1005*4882a593Smuzhiyun	select SERIAL_CORE
1006*4882a593Smuzhiyun	help
1007*4882a593Smuzhiyun	  If you have a machine based on an Texas Instruments OMAP CPU you
1008*4882a593Smuzhiyun	  can enable its onboard serial ports by enabling this option.
1009*4882a593Smuzhiyun
1010*4882a593Smuzhiyun	  By enabling this option you take advantage of dma feature available
1011*4882a593Smuzhiyun	  with the omap-serial driver. DMA support can be enabled from platform
1012*4882a593Smuzhiyun	  data.
1013*4882a593Smuzhiyun
1014*4882a593Smuzhiyunconfig SERIAL_OMAP_CONSOLE
1015*4882a593Smuzhiyun	bool "Console on OMAP serial port"
1016*4882a593Smuzhiyun	depends on SERIAL_OMAP=y
1017*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1018*4882a593Smuzhiyun	help
1019*4882a593Smuzhiyun	  Select this option if you would like to use omap serial port as
1020*4882a593Smuzhiyun	  console.
1021*4882a593Smuzhiyun
1022*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
1023*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
1024*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
1025*4882a593Smuzhiyun	  "console=ttyOx". (Try "man bootparam" or see the documentation of
1026*4882a593Smuzhiyun	  your boot loader about how to pass options to the kernel at
1027*4882a593Smuzhiyun	  boot time.)
1028*4882a593Smuzhiyun
1029*4882a593Smuzhiyunconfig SERIAL_SIFIVE
1030*4882a593Smuzhiyun	tristate "SiFive UART support"
1031*4882a593Smuzhiyun	depends on OF
1032*4882a593Smuzhiyun	select SERIAL_CORE
1033*4882a593Smuzhiyun	help
1034*4882a593Smuzhiyun	  Select this option if you are building a kernel for a device that
1035*4882a593Smuzhiyun	  contains a SiFive UART IP block.  This type of UART is present on
1036*4882a593Smuzhiyun	  SiFive FU540 SoCs, among others.
1037*4882a593Smuzhiyun
1038*4882a593Smuzhiyunconfig SERIAL_SIFIVE_CONSOLE
1039*4882a593Smuzhiyun	bool "Console on SiFive UART"
1040*4882a593Smuzhiyun	depends on SERIAL_SIFIVE=y
1041*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1042*4882a593Smuzhiyun	select SERIAL_EARLYCON
1043*4882a593Smuzhiyun	help
1044*4882a593Smuzhiyun	  Select this option if you would like to use a SiFive UART as the
1045*4882a593Smuzhiyun	  system console.
1046*4882a593Smuzhiyun
1047*4882a593Smuzhiyun	  Even if you say Y here, the currently visible virtual console
1048*4882a593Smuzhiyun	  (/dev/tty0) will still be used as the system console by default, but
1049*4882a593Smuzhiyun	  you can alter that using a kernel command line option such as
1050*4882a593Smuzhiyun	  "console=ttySIFx". (Try "man bootparam" or see the documentation of
1051*4882a593Smuzhiyun	  your boot loader about how to pass options to the kernel at
1052*4882a593Smuzhiyun	  boot time.)
1053*4882a593Smuzhiyun
1054*4882a593Smuzhiyunconfig SERIAL_LANTIQ
1055*4882a593Smuzhiyun	tristate "Lantiq serial driver"
1056*4882a593Smuzhiyun	depends on (LANTIQ || X86) || COMPILE_TEST
1057*4882a593Smuzhiyun	select SERIAL_CORE
1058*4882a593Smuzhiyun	help
1059*4882a593Smuzhiyun	  Support for UART on Lantiq and Intel SoCs.
1060*4882a593Smuzhiyun	  To compile this driver as a module, select M here. The
1061*4882a593Smuzhiyun	  module will be called lantiq.
1062*4882a593Smuzhiyun
1063*4882a593Smuzhiyunconfig SERIAL_LANTIQ_CONSOLE
1064*4882a593Smuzhiyun	bool "Console on Lantiq UART"
1065*4882a593Smuzhiyun	depends on SERIAL_LANTIQ=y
1066*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1067*4882a593Smuzhiyun	select SERIAL_EARLYCON
1068*4882a593Smuzhiyun	help
1069*4882a593Smuzhiyun	  Select this option if you would like to use a Lantiq UART as the
1070*4882a593Smuzhiyun	  system console.
1071*4882a593Smuzhiyun
1072*4882a593Smuzhiyunconfig SERIAL_QE
1073*4882a593Smuzhiyun	tristate "Freescale QUICC Engine serial port support"
1074*4882a593Smuzhiyun	depends on QUICC_ENGINE
1075*4882a593Smuzhiyun	select SERIAL_CORE
1076*4882a593Smuzhiyun	select FW_LOADER
1077*4882a593Smuzhiyun	help
1078*4882a593Smuzhiyun	  This driver supports the QE serial ports on Freescale embedded
1079*4882a593Smuzhiyun	  PowerPC that contain a QUICC Engine.
1080*4882a593Smuzhiyun
1081*4882a593Smuzhiyunconfig SERIAL_SCCNXP
1082*4882a593Smuzhiyun	tristate "SCCNXP serial port support"
1083*4882a593Smuzhiyun	select SERIAL_CORE
1084*4882a593Smuzhiyun	help
1085*4882a593Smuzhiyun	  This selects support for an advanced UART from NXP (Philips).
1086*4882a593Smuzhiyun	  Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1087*4882a593Smuzhiyun	  SC28L202, SCC68681 and SCC68692.
1088*4882a593Smuzhiyun
1089*4882a593Smuzhiyunconfig SERIAL_SCCNXP_CONSOLE
1090*4882a593Smuzhiyun	bool "Console on SCCNXP serial port"
1091*4882a593Smuzhiyun	depends on SERIAL_SCCNXP=y
1092*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1093*4882a593Smuzhiyun	help
1094*4882a593Smuzhiyun	  Support for console on SCCNXP serial ports.
1095*4882a593Smuzhiyun
1096*4882a593Smuzhiyunconfig SERIAL_SC16IS7XX_CORE
1097*4882a593Smuzhiyun	tristate
1098*4882a593Smuzhiyun
1099*4882a593Smuzhiyunconfig SERIAL_SC16IS7XX
1100*4882a593Smuzhiyun	tristate "SC16IS7xx serial support"
1101*4882a593Smuzhiyun	select SERIAL_CORE
1102*4882a593Smuzhiyun	depends on (SPI_MASTER && !I2C) || I2C
1103*4882a593Smuzhiyun	help
1104*4882a593Smuzhiyun	  This selects support for SC16IS7xx serial ports.
1105*4882a593Smuzhiyun	  Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1106*4882a593Smuzhiyun	  SC16IS760 and SC16IS762. Select supported buses using options below.
1107*4882a593Smuzhiyun
1108*4882a593Smuzhiyunconfig SERIAL_SC16IS7XX_I2C
1109*4882a593Smuzhiyun	bool "SC16IS7xx for I2C interface"
1110*4882a593Smuzhiyun	depends on SERIAL_SC16IS7XX
1111*4882a593Smuzhiyun	depends on I2C
1112*4882a593Smuzhiyun	select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1113*4882a593Smuzhiyun	select REGMAP_I2C if I2C
1114*4882a593Smuzhiyun	default y
1115*4882a593Smuzhiyun	help
1116*4882a593Smuzhiyun	  Enable SC16IS7xx driver on I2C bus,
1117*4882a593Smuzhiyun	  If required say y, and say n to i2c if not required,
1118*4882a593Smuzhiyun	  Enabled by default to support oldconfig.
1119*4882a593Smuzhiyun	  You must select at least one bus for the driver to be built.
1120*4882a593Smuzhiyun
1121*4882a593Smuzhiyunconfig SERIAL_SC16IS7XX_SPI
1122*4882a593Smuzhiyun	bool "SC16IS7xx for spi interface"
1123*4882a593Smuzhiyun	depends on SERIAL_SC16IS7XX
1124*4882a593Smuzhiyun	depends on SPI_MASTER
1125*4882a593Smuzhiyun	select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1126*4882a593Smuzhiyun	select REGMAP_SPI if SPI_MASTER
1127*4882a593Smuzhiyun	help
1128*4882a593Smuzhiyun	  Enable SC16IS7xx driver on SPI bus,
1129*4882a593Smuzhiyun	  If required say y, and say n to spi if not required,
1130*4882a593Smuzhiyun	  This is additional support to existing driver.
1131*4882a593Smuzhiyun	  You must select at least one bus for the driver to be built.
1132*4882a593Smuzhiyun
1133*4882a593Smuzhiyunconfig SERIAL_TIMBERDALE
1134*4882a593Smuzhiyun	tristate "Support for timberdale UART"
1135*4882a593Smuzhiyun	select SERIAL_CORE
1136*4882a593Smuzhiyun	depends on X86_32 || COMPILE_TEST
1137*4882a593Smuzhiyun	help
1138*4882a593Smuzhiyun	Add support for UART controller on timberdale.
1139*4882a593Smuzhiyun
1140*4882a593Smuzhiyunconfig SERIAL_BCM63XX
1141*4882a593Smuzhiyun	tristate "Broadcom BCM63xx/BCM33xx UART support"
1142*4882a593Smuzhiyun	select SERIAL_CORE
1143*4882a593Smuzhiyun	depends on MIPS || ARM || COMPILE_TEST
1144*4882a593Smuzhiyun	help
1145*4882a593Smuzhiyun	  This enables the driver for the onchip UART core found on
1146*4882a593Smuzhiyun	  the following chipsets:
1147*4882a593Smuzhiyun
1148*4882a593Smuzhiyun	    BCM33xx (cable modem)
1149*4882a593Smuzhiyun	    BCM63xx/BCM63xxx (DSL)
1150*4882a593Smuzhiyun	    BCM68xx (PON)
1151*4882a593Smuzhiyun	    BCM7xxx (STB) - DOCSIS console
1152*4882a593Smuzhiyun
1153*4882a593Smuzhiyunconfig SERIAL_BCM63XX_CONSOLE
1154*4882a593Smuzhiyun	bool "Console on BCM63xx serial port"
1155*4882a593Smuzhiyun	depends on SERIAL_BCM63XX=y
1156*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1157*4882a593Smuzhiyun	select SERIAL_EARLYCON
1158*4882a593Smuzhiyun	help
1159*4882a593Smuzhiyun	  If you have enabled the serial port on the BCM63xx CPU
1160*4882a593Smuzhiyun	  you can make it the console by answering Y to this option.
1161*4882a593Smuzhiyun
1162*4882a593Smuzhiyunconfig SERIAL_GRLIB_GAISLER_APBUART
1163*4882a593Smuzhiyun	tristate "GRLIB APBUART serial support"
1164*4882a593Smuzhiyun	depends on OF && SPARC
1165*4882a593Smuzhiyun	select SERIAL_CORE
1166*4882a593Smuzhiyun	help
1167*4882a593Smuzhiyun	Add support for the GRLIB APBUART serial port.
1168*4882a593Smuzhiyun
1169*4882a593Smuzhiyunconfig SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1170*4882a593Smuzhiyun	bool "Console on GRLIB APBUART serial port"
1171*4882a593Smuzhiyun	depends on SERIAL_GRLIB_GAISLER_APBUART=y
1172*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1173*4882a593Smuzhiyun	help
1174*4882a593Smuzhiyun	Support for running a console on the GRLIB APBUART
1175*4882a593Smuzhiyun
1176*4882a593Smuzhiyunconfig SERIAL_ALTERA_JTAGUART
1177*4882a593Smuzhiyun	tristate "Altera JTAG UART support"
1178*4882a593Smuzhiyun	select SERIAL_CORE
1179*4882a593Smuzhiyun	help
1180*4882a593Smuzhiyun	  This driver supports the Altera JTAG UART port.
1181*4882a593Smuzhiyun
1182*4882a593Smuzhiyunconfig SERIAL_ALTERA_JTAGUART_CONSOLE
1183*4882a593Smuzhiyun	bool "Altera JTAG UART console support"
1184*4882a593Smuzhiyun	depends on SERIAL_ALTERA_JTAGUART=y
1185*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1186*4882a593Smuzhiyun	select SERIAL_EARLYCON
1187*4882a593Smuzhiyun	help
1188*4882a593Smuzhiyun	  Enable a Altera JTAG UART port to be the system console.
1189*4882a593Smuzhiyun
1190*4882a593Smuzhiyunconfig SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1191*4882a593Smuzhiyun	bool "Bypass output when no connection"
1192*4882a593Smuzhiyun	depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1193*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1194*4882a593Smuzhiyun	help
1195*4882a593Smuzhiyun	  Bypass console output and keep going even if there is no
1196*4882a593Smuzhiyun	  JTAG terminal connection with the host.
1197*4882a593Smuzhiyun
1198*4882a593Smuzhiyunconfig SERIAL_ALTERA_UART
1199*4882a593Smuzhiyun	tristate "Altera UART support"
1200*4882a593Smuzhiyun	select SERIAL_CORE
1201*4882a593Smuzhiyun	help
1202*4882a593Smuzhiyun	  This driver supports the Altera softcore UART port.
1203*4882a593Smuzhiyun
1204*4882a593Smuzhiyunconfig SERIAL_ALTERA_UART_MAXPORTS
1205*4882a593Smuzhiyun	int "Maximum number of Altera UART ports"
1206*4882a593Smuzhiyun	depends on SERIAL_ALTERA_UART
1207*4882a593Smuzhiyun	default 4
1208*4882a593Smuzhiyun	help
1209*4882a593Smuzhiyun	  This setting lets you define the maximum number of the Altera
1210*4882a593Smuzhiyun	  UART ports. The usual default varies from board to board, and
1211*4882a593Smuzhiyun	  this setting is a way of catering for that.
1212*4882a593Smuzhiyun
1213*4882a593Smuzhiyunconfig SERIAL_ALTERA_UART_BAUDRATE
1214*4882a593Smuzhiyun	int "Default baudrate for Altera UART ports"
1215*4882a593Smuzhiyun	depends on SERIAL_ALTERA_UART
1216*4882a593Smuzhiyun	default 115200
1217*4882a593Smuzhiyun	help
1218*4882a593Smuzhiyun	  This setting lets you define what the default baudrate is for the
1219*4882a593Smuzhiyun	  Altera UART ports. The usual default varies from board to board,
1220*4882a593Smuzhiyun	  and this setting is a way of catering for that.
1221*4882a593Smuzhiyun
1222*4882a593Smuzhiyunconfig SERIAL_ALTERA_UART_CONSOLE
1223*4882a593Smuzhiyun	bool "Altera UART console support"
1224*4882a593Smuzhiyun	depends on SERIAL_ALTERA_UART=y
1225*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1226*4882a593Smuzhiyun	select SERIAL_EARLYCON
1227*4882a593Smuzhiyun	help
1228*4882a593Smuzhiyun	  Enable a Altera UART port to be the system console.
1229*4882a593Smuzhiyun
1230*4882a593Smuzhiyunconfig SERIAL_IFX6X60
1231*4882a593Smuzhiyun	tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)"
1232*4882a593Smuzhiyun	depends on GPIOLIB || COMPILE_TEST
1233*4882a593Smuzhiyun	depends on SPI && HAS_DMA
1234*4882a593Smuzhiyun	help
1235*4882a593Smuzhiyun	  Support for the IFX6x60 modem devices on Intel MID platforms.
1236*4882a593Smuzhiyun
1237*4882a593Smuzhiyunconfig SERIAL_PCH_UART
1238*4882a593Smuzhiyun	tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1239*4882a593Smuzhiyun	depends on PCI && (X86_32 || MIPS ||  COMPILE_TEST)
1240*4882a593Smuzhiyun	select SERIAL_CORE
1241*4882a593Smuzhiyun	help
1242*4882a593Smuzhiyun	  This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1243*4882a593Smuzhiyun	  which is an IOH(Input/Output Hub) for x86 embedded processor.
1244*4882a593Smuzhiyun	  Enabling PCH_DMA, this PCH UART works as DMA mode.
1245*4882a593Smuzhiyun
1246*4882a593Smuzhiyun	  This driver also can be used for LAPIS Semiconductor IOH(Input/
1247*4882a593Smuzhiyun	  Output Hub), ML7213, ML7223 and ML7831.
1248*4882a593Smuzhiyun	  ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1249*4882a593Smuzhiyun	  for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1250*4882a593Smuzhiyun	  ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1251*4882a593Smuzhiyun	  ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1252*4882a593Smuzhiyun
1253*4882a593Smuzhiyunconfig SERIAL_PCH_UART_CONSOLE
1254*4882a593Smuzhiyun	bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1255*4882a593Smuzhiyun	depends on SERIAL_PCH_UART=y
1256*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1257*4882a593Smuzhiyun	help
1258*4882a593Smuzhiyun	  Say Y here if you wish to use the PCH UART as the system console
1259*4882a593Smuzhiyun	  (the system  console is the device which receives all kernel messages and
1260*4882a593Smuzhiyun	  warnings and which allows logins in single user mode).
1261*4882a593Smuzhiyun
1262*4882a593Smuzhiyunconfig SERIAL_MXS_AUART
1263*4882a593Smuzhiyun	tristate "MXS AUART support"
1264*4882a593Smuzhiyun	depends on ARCH_MXS || MACH_ASM9260 || COMPILE_TEST
1265*4882a593Smuzhiyun	select SERIAL_CORE
1266*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
1267*4882a593Smuzhiyun	help
1268*4882a593Smuzhiyun	  This driver supports the MXS and Alphascale ASM9260 Application
1269*4882a593Smuzhiyun	  UART (AUART) port.
1270*4882a593Smuzhiyun
1271*4882a593Smuzhiyunconfig SERIAL_MXS_AUART_CONSOLE
1272*4882a593Smuzhiyun	bool "MXS AUART console support"
1273*4882a593Smuzhiyun	depends on SERIAL_MXS_AUART=y
1274*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1275*4882a593Smuzhiyun	help
1276*4882a593Smuzhiyun	  Enable a MXS AUART port to be the system console.
1277*4882a593Smuzhiyun
1278*4882a593Smuzhiyunconfig SERIAL_XILINX_PS_UART
1279*4882a593Smuzhiyun	tristate "Cadence (Xilinx Zynq) UART support"
1280*4882a593Smuzhiyun	depends on OF
1281*4882a593Smuzhiyun	select SERIAL_CORE
1282*4882a593Smuzhiyun	help
1283*4882a593Smuzhiyun	  This driver supports the Cadence UART. It is found e.g. in Xilinx
1284*4882a593Smuzhiyun	  Zynq.
1285*4882a593Smuzhiyun
1286*4882a593Smuzhiyunconfig SERIAL_XILINX_PS_UART_CONSOLE
1287*4882a593Smuzhiyun	bool "Cadence UART console support"
1288*4882a593Smuzhiyun	depends on SERIAL_XILINX_PS_UART=y
1289*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1290*4882a593Smuzhiyun	select SERIAL_EARLYCON
1291*4882a593Smuzhiyun	help
1292*4882a593Smuzhiyun	  Enable a Cadence UART port to be the system console.
1293*4882a593Smuzhiyun
1294*4882a593Smuzhiyunconfig SERIAL_AR933X
1295*4882a593Smuzhiyun	tristate "AR933X serial port support"
1296*4882a593Smuzhiyun	depends on HAVE_CLK && ATH79
1297*4882a593Smuzhiyun	select SERIAL_CORE
1298*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
1299*4882a593Smuzhiyun	help
1300*4882a593Smuzhiyun	  If you have an Atheros AR933X SOC based board and want to use the
1301*4882a593Smuzhiyun	  built-in UART of the SoC, say Y to this option.
1302*4882a593Smuzhiyun
1303*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
1304*4882a593Smuzhiyun	  module will be called ar933x_uart.
1305*4882a593Smuzhiyun
1306*4882a593Smuzhiyunconfig SERIAL_AR933X_CONSOLE
1307*4882a593Smuzhiyun	bool "Console on AR933X serial port"
1308*4882a593Smuzhiyun	depends on SERIAL_AR933X=y
1309*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1310*4882a593Smuzhiyun	help
1311*4882a593Smuzhiyun	  Enable a built-in UART port of the AR933X to be the system console.
1312*4882a593Smuzhiyun
1313*4882a593Smuzhiyunconfig SERIAL_AR933X_NR_UARTS
1314*4882a593Smuzhiyun	int "Maximum number of AR933X serial ports"
1315*4882a593Smuzhiyun	depends on SERIAL_AR933X
1316*4882a593Smuzhiyun	default "2"
1317*4882a593Smuzhiyun	help
1318*4882a593Smuzhiyun	  Set this to the number of serial ports you want the driver
1319*4882a593Smuzhiyun	  to support.
1320*4882a593Smuzhiyun
1321*4882a593Smuzhiyunconfig SERIAL_EFM32_UART
1322*4882a593Smuzhiyun	tristate "EFM32 UART/USART port"
1323*4882a593Smuzhiyun	depends on ARM && (ARCH_EFM32 || COMPILE_TEST)
1324*4882a593Smuzhiyun	select SERIAL_CORE
1325*4882a593Smuzhiyun	help
1326*4882a593Smuzhiyun	  This driver support the USART and UART ports on
1327*4882a593Smuzhiyun	  Energy Micro's efm32 SoCs.
1328*4882a593Smuzhiyun
1329*4882a593Smuzhiyunconfig SERIAL_MPS2_UART_CONSOLE
1330*4882a593Smuzhiyun	bool "MPS2 UART console support"
1331*4882a593Smuzhiyun	depends on SERIAL_MPS2_UART
1332*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1333*4882a593Smuzhiyun	select SERIAL_EARLYCON
1334*4882a593Smuzhiyun
1335*4882a593Smuzhiyunconfig SERIAL_MPS2_UART
1336*4882a593Smuzhiyun	bool "MPS2 UART port"
1337*4882a593Smuzhiyun	depends on ARCH_MPS2 || COMPILE_TEST
1338*4882a593Smuzhiyun	select SERIAL_CORE
1339*4882a593Smuzhiyun	help
1340*4882a593Smuzhiyun	  This driver support the UART ports on ARM MPS2.
1341*4882a593Smuzhiyun
1342*4882a593Smuzhiyunconfig SERIAL_EFM32_UART_CONSOLE
1343*4882a593Smuzhiyun	bool "EFM32 UART/USART console support"
1344*4882a593Smuzhiyun	depends on SERIAL_EFM32_UART=y
1345*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1346*4882a593Smuzhiyun
1347*4882a593Smuzhiyunconfig SERIAL_ARC
1348*4882a593Smuzhiyun	tristate "ARC UART driver support"
1349*4882a593Smuzhiyun	select SERIAL_CORE
1350*4882a593Smuzhiyun	help
1351*4882a593Smuzhiyun	  Driver for on-chip UART for ARC(Synopsys) for the legacy
1352*4882a593Smuzhiyun	  FPGA Boards (ML50x/ARCAngel4)
1353*4882a593Smuzhiyun
1354*4882a593Smuzhiyunconfig SERIAL_ARC_CONSOLE
1355*4882a593Smuzhiyun	bool "Console on ARC UART"
1356*4882a593Smuzhiyun	depends on SERIAL_ARC=y
1357*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1358*4882a593Smuzhiyun	select SERIAL_EARLYCON
1359*4882a593Smuzhiyun	help
1360*4882a593Smuzhiyun	  Enable system Console on ARC UART
1361*4882a593Smuzhiyun
1362*4882a593Smuzhiyunconfig SERIAL_ARC_NR_PORTS
1363*4882a593Smuzhiyun	int "Number of ARC UART ports"
1364*4882a593Smuzhiyun	depends on SERIAL_ARC
1365*4882a593Smuzhiyun	range 1 3
1366*4882a593Smuzhiyun	default "1"
1367*4882a593Smuzhiyun	help
1368*4882a593Smuzhiyun	  Set this to the number of serial ports you want the driver
1369*4882a593Smuzhiyun	  to support.
1370*4882a593Smuzhiyun
1371*4882a593Smuzhiyunconfig SERIAL_RP2
1372*4882a593Smuzhiyun	tristate "Comtrol RocketPort EXPRESS/INFINITY support"
1373*4882a593Smuzhiyun	depends on PCI
1374*4882a593Smuzhiyun	select SERIAL_CORE
1375*4882a593Smuzhiyun	help
1376*4882a593Smuzhiyun	  This driver supports the Comtrol RocketPort EXPRESS and
1377*4882a593Smuzhiyun	  RocketPort INFINITY families of PCI/PCIe multiport serial adapters.
1378*4882a593Smuzhiyun	  These adapters use a "RocketPort 2" ASIC that is not compatible
1379*4882a593Smuzhiyun	  with the original RocketPort driver (CONFIG_ROCKETPORT).
1380*4882a593Smuzhiyun
1381*4882a593Smuzhiyun	  To compile this driver as a module, choose M here: the
1382*4882a593Smuzhiyun	  module will be called rp2.
1383*4882a593Smuzhiyun
1384*4882a593Smuzhiyun	  If you want to compile this driver into the kernel, say Y here.  If
1385*4882a593Smuzhiyun	  you don't have a suitable RocketPort card installed, say N.
1386*4882a593Smuzhiyun
1387*4882a593Smuzhiyunconfig SERIAL_RP2_NR_UARTS
1388*4882a593Smuzhiyun	int "Maximum number of RocketPort EXPRESS/INFINITY ports"
1389*4882a593Smuzhiyun	depends on SERIAL_RP2
1390*4882a593Smuzhiyun	default "32"
1391*4882a593Smuzhiyun	help
1392*4882a593Smuzhiyun	  If multiple cards are present, the default limit of 32 ports may
1393*4882a593Smuzhiyun	  need to be increased.
1394*4882a593Smuzhiyun
1395*4882a593Smuzhiyunconfig SERIAL_FSL_LPUART
1396*4882a593Smuzhiyun	tristate "Freescale lpuart serial port support"
1397*4882a593Smuzhiyun	depends on HAS_DMA
1398*4882a593Smuzhiyun	select SERIAL_CORE
1399*4882a593Smuzhiyun	help
1400*4882a593Smuzhiyun	  Support for the on-chip lpuart on some Freescale SOCs.
1401*4882a593Smuzhiyun
1402*4882a593Smuzhiyunconfig SERIAL_FSL_LPUART_CONSOLE
1403*4882a593Smuzhiyun	bool "Console on Freescale lpuart serial port"
1404*4882a593Smuzhiyun	depends on SERIAL_FSL_LPUART=y
1405*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1406*4882a593Smuzhiyun	select SERIAL_EARLYCON
1407*4882a593Smuzhiyun	help
1408*4882a593Smuzhiyun	  If you have enabled the lpuart serial port on the Freescale SoCs,
1409*4882a593Smuzhiyun	  you can make it the console by answering Y to this option.
1410*4882a593Smuzhiyun
1411*4882a593Smuzhiyunconfig SERIAL_FSL_LINFLEXUART
1412*4882a593Smuzhiyun	tristate "Freescale LINFlexD UART serial port support"
1413*4882a593Smuzhiyun	depends on PRINTK
1414*4882a593Smuzhiyun	select SERIAL_CORE
1415*4882a593Smuzhiyun	help
1416*4882a593Smuzhiyun	  Support for the on-chip LINFlexD UART on some Freescale SOCs.
1417*4882a593Smuzhiyun
1418*4882a593Smuzhiyunconfig SERIAL_FSL_LINFLEXUART_CONSOLE
1419*4882a593Smuzhiyun	bool "Console on Freescale LINFlexD UART serial port"
1420*4882a593Smuzhiyun	depends on SERIAL_FSL_LINFLEXUART=y
1421*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1422*4882a593Smuzhiyun	select SERIAL_EARLYCON
1423*4882a593Smuzhiyun	help
1424*4882a593Smuzhiyun	  If you have enabled the LINFlexD UART serial port on the Freescale
1425*4882a593Smuzhiyun	  SoCs, you can make it the console by answering Y to this option.
1426*4882a593Smuzhiyun
1427*4882a593Smuzhiyunconfig SERIAL_CONEXANT_DIGICOLOR
1428*4882a593Smuzhiyun	tristate "Conexant Digicolor CX92xxx USART serial port support"
1429*4882a593Smuzhiyun	depends on OF
1430*4882a593Smuzhiyun	select SERIAL_CORE
1431*4882a593Smuzhiyun	help
1432*4882a593Smuzhiyun	  Support for the on-chip USART on Conexant Digicolor SoCs.
1433*4882a593Smuzhiyun
1434*4882a593Smuzhiyunconfig SERIAL_CONEXANT_DIGICOLOR_CONSOLE
1435*4882a593Smuzhiyun	bool "Console on Conexant Digicolor serial port"
1436*4882a593Smuzhiyun	depends on SERIAL_CONEXANT_DIGICOLOR=y
1437*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1438*4882a593Smuzhiyun	help
1439*4882a593Smuzhiyun	  If you have enabled the USART serial port on Conexant Digicolor
1440*4882a593Smuzhiyun	  SoCs, you can make it the console by answering Y to this option.
1441*4882a593Smuzhiyun
1442*4882a593Smuzhiyunconfig SERIAL_ST_ASC
1443*4882a593Smuzhiyun	tristate "ST ASC serial port support"
1444*4882a593Smuzhiyun	select SERIAL_CORE
1445*4882a593Smuzhiyun	depends on ARM || COMPILE_TEST
1446*4882a593Smuzhiyun	help
1447*4882a593Smuzhiyun	  This driver is for the on-chip Asychronous Serial Controller on
1448*4882a593Smuzhiyun	  STMicroelectronics STi SoCs.
1449*4882a593Smuzhiyun	  ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality.
1450*4882a593Smuzhiyun	  It support all industry standard baud rates.
1451*4882a593Smuzhiyun
1452*4882a593Smuzhiyun	  If unsure, say N.
1453*4882a593Smuzhiyun
1454*4882a593Smuzhiyunconfig SERIAL_ST_ASC_CONSOLE
1455*4882a593Smuzhiyun	bool "Support for console on ST ASC"
1456*4882a593Smuzhiyun	depends on SERIAL_ST_ASC=y
1457*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1458*4882a593Smuzhiyun
1459*4882a593Smuzhiyunconfig SERIAL_MEN_Z135
1460*4882a593Smuzhiyun	tristate "MEN 16z135 Support"
1461*4882a593Smuzhiyun	select SERIAL_CORE
1462*4882a593Smuzhiyun	depends on MCB
1463*4882a593Smuzhiyun	help
1464*4882a593Smuzhiyun	  Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core
1465*4882a593Smuzhiyun	  on a MCB carrier.
1466*4882a593Smuzhiyun
1467*4882a593Smuzhiyun	  This driver can also be build as a module. If so, the module will be called
1468*4882a593Smuzhiyun	  men_z135_uart.ko
1469*4882a593Smuzhiyun
1470*4882a593Smuzhiyunconfig SERIAL_SPRD
1471*4882a593Smuzhiyun	tristate "Support for Spreadtrum serial"
1472*4882a593Smuzhiyun	select SERIAL_CORE
1473*4882a593Smuzhiyun	depends on COMMON_CLK
1474*4882a593Smuzhiyun	help
1475*4882a593Smuzhiyun	  This enables the driver for the Spreadtrum's serial.
1476*4882a593Smuzhiyun
1477*4882a593Smuzhiyunconfig SERIAL_SPRD_CONSOLE
1478*4882a593Smuzhiyun	bool "Spreadtrum UART console support"
1479*4882a593Smuzhiyun	depends on SERIAL_SPRD=y
1480*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1481*4882a593Smuzhiyun	select SERIAL_EARLYCON
1482*4882a593Smuzhiyun	help
1483*4882a593Smuzhiyun	  Support for early debug console using Spreadtrum's serial. This enables
1484*4882a593Smuzhiyun	  the console before standard serial driver is probed. This is enabled
1485*4882a593Smuzhiyun	  with "earlycon" on the kernel command line. The console is
1486*4882a593Smuzhiyun	  enabled when early_param is processed.
1487*4882a593Smuzhiyun
1488*4882a593Smuzhiyunconfig SERIAL_STM32
1489*4882a593Smuzhiyun	tristate "STMicroelectronics STM32 serial port support"
1490*4882a593Smuzhiyun	select SERIAL_CORE
1491*4882a593Smuzhiyun	depends on ARCH_STM32 || COMPILE_TEST
1492*4882a593Smuzhiyun	select SERIAL_MCTRL_GPIO if GPIOLIB
1493*4882a593Smuzhiyun	help
1494*4882a593Smuzhiyun	  This driver is for the on-chip Serial Controller on
1495*4882a593Smuzhiyun	  STMicroelectronics STM32 MCUs.
1496*4882a593Smuzhiyun	  USART supports Rx & Tx functionality.
1497*4882a593Smuzhiyun	  It support all industry standard baud rates.
1498*4882a593Smuzhiyun
1499*4882a593Smuzhiyun	  If unsure, say N.
1500*4882a593Smuzhiyun
1501*4882a593Smuzhiyunconfig SERIAL_STM32_CONSOLE
1502*4882a593Smuzhiyun	bool "Support for console on STM32"
1503*4882a593Smuzhiyun	depends on SERIAL_STM32=y
1504*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1505*4882a593Smuzhiyun
1506*4882a593Smuzhiyunconfig SERIAL_MVEBU_UART
1507*4882a593Smuzhiyun	bool "Marvell EBU serial port support"
1508*4882a593Smuzhiyun	depends on ARCH_MVEBU || COMPILE_TEST
1509*4882a593Smuzhiyun	select SERIAL_CORE
1510*4882a593Smuzhiyun	help
1511*4882a593Smuzhiyun	  This driver is for Marvell EBU SoC's UART. If you have a machine
1512*4882a593Smuzhiyun	  based on the Armada-3700 SoC and wish to use the on-board serial
1513*4882a593Smuzhiyun	  port,
1514*4882a593Smuzhiyun	  say 'Y' here.
1515*4882a593Smuzhiyun	  Otherwise, say 'N'.
1516*4882a593Smuzhiyun
1517*4882a593Smuzhiyunconfig SERIAL_MVEBU_CONSOLE
1518*4882a593Smuzhiyun	bool "Console on Marvell EBU serial port"
1519*4882a593Smuzhiyun	depends on SERIAL_MVEBU_UART
1520*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1521*4882a593Smuzhiyun	select SERIAL_EARLYCON
1522*4882a593Smuzhiyun	default y
1523*4882a593Smuzhiyun	help
1524*4882a593Smuzhiyun	  Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1525*4882a593Smuzhiyun	  (the system console is the device which receives all kernel messages
1526*4882a593Smuzhiyun	  and warnings and which allows logins in single user mode)
1527*4882a593Smuzhiyun	  Otherwise, say 'N'.
1528*4882a593Smuzhiyun
1529*4882a593Smuzhiyunconfig SERIAL_OWL
1530*4882a593Smuzhiyun	tristate "Actions Semi Owl serial port support"
1531*4882a593Smuzhiyun	depends on ARCH_ACTIONS || COMPILE_TEST
1532*4882a593Smuzhiyun	select SERIAL_CORE
1533*4882a593Smuzhiyun	help
1534*4882a593Smuzhiyun	  This driver is for Actions Semiconductor S500/S900 SoC's UART.
1535*4882a593Smuzhiyun	  Say 'Y' here if you wish to use the on-board serial port.
1536*4882a593Smuzhiyun	  Otherwise, say 'N'.
1537*4882a593Smuzhiyun
1538*4882a593Smuzhiyunconfig SERIAL_OWL_CONSOLE
1539*4882a593Smuzhiyun	bool "Console on Actions Semi Owl serial port"
1540*4882a593Smuzhiyun	depends on SERIAL_OWL=y
1541*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1542*4882a593Smuzhiyun	select SERIAL_EARLYCON
1543*4882a593Smuzhiyun	default y
1544*4882a593Smuzhiyun	help
1545*4882a593Smuzhiyun	  Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART
1546*4882a593Smuzhiyun	  as the system console.
1547*4882a593Smuzhiyun
1548*4882a593Smuzhiyunconfig SERIAL_RDA
1549*4882a593Smuzhiyun	bool "RDA Micro serial port support"
1550*4882a593Smuzhiyun	depends on ARCH_RDA || COMPILE_TEST
1551*4882a593Smuzhiyun	select SERIAL_CORE
1552*4882a593Smuzhiyun	help
1553*4882a593Smuzhiyun	  This driver is for RDA8810PL SoC's UART.
1554*4882a593Smuzhiyun	  Say 'Y' here if you wish to use the on-board serial port.
1555*4882a593Smuzhiyun	  Otherwise, say 'N'.
1556*4882a593Smuzhiyun
1557*4882a593Smuzhiyunconfig SERIAL_RDA_CONSOLE
1558*4882a593Smuzhiyun	bool "Console on RDA Micro serial port"
1559*4882a593Smuzhiyun	depends on SERIAL_RDA=y
1560*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1561*4882a593Smuzhiyun	select SERIAL_EARLYCON
1562*4882a593Smuzhiyun	default y
1563*4882a593Smuzhiyun	help
1564*4882a593Smuzhiyun	  Say 'Y' here if you wish to use the RDA8810PL UART as the system
1565*4882a593Smuzhiyun	  console. Only earlycon is implemented currently.
1566*4882a593Smuzhiyun
1567*4882a593Smuzhiyunconfig SERIAL_MILBEAUT_USIO
1568*4882a593Smuzhiyun	tristate "Milbeaut USIO/UART serial port support"
1569*4882a593Smuzhiyun	depends on ARCH_MILBEAUT || (COMPILE_TEST && OF)
1570*4882a593Smuzhiyun	default ARCH_MILBEAUT
1571*4882a593Smuzhiyun	select SERIAL_CORE
1572*4882a593Smuzhiyun	help
1573*4882a593Smuzhiyun	  This selects the USIO/UART IP found in Socionext Milbeaut SoCs.
1574*4882a593Smuzhiyun
1575*4882a593Smuzhiyunconfig SERIAL_MILBEAUT_USIO_PORTS
1576*4882a593Smuzhiyun	int "Maximum number of CSIO/UART ports (1-8)"
1577*4882a593Smuzhiyun	range 1 8
1578*4882a593Smuzhiyun	depends on SERIAL_MILBEAUT_USIO
1579*4882a593Smuzhiyun	default "4"
1580*4882a593Smuzhiyun
1581*4882a593Smuzhiyunconfig SERIAL_MILBEAUT_USIO_CONSOLE
1582*4882a593Smuzhiyun	bool "Support for console on MILBEAUT USIO/UART serial port"
1583*4882a593Smuzhiyun	depends on SERIAL_MILBEAUT_USIO=y
1584*4882a593Smuzhiyun	default y
1585*4882a593Smuzhiyun	select SERIAL_CORE_CONSOLE
1586*4882a593Smuzhiyun	select SERIAL_EARLYCON
1587*4882a593Smuzhiyun	help
1588*4882a593Smuzhiyun	  Say 'Y' here if you wish to use a USIO/UART of Socionext Milbeaut
1589*4882a593Smuzhiyun	  SoCs as the system console (the system console is the device which
1590*4882a593Smuzhiyun	  receives all kernel messages and warnings and which allows logins in
1591*4882a593Smuzhiyun	  single user mode).
1592*4882a593Smuzhiyun
1593*4882a593Smuzhiyunendmenu
1594*4882a593Smuzhiyun
1595*4882a593Smuzhiyunconfig SERIAL_MCTRL_GPIO
1596*4882a593Smuzhiyun	tristate
1597