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