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