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