Merge tag 'amlogic-dt64-2.1' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman...
[linux-2.6-microblaze.git] / drivers / tty / serial / Kconfig
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # Serial device configuration
4 #
5
6 if TTY
7
8 menu "Serial drivers"
9         depends on HAS_IOMEM
10
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.
17
18 source "drivers/tty/serial/8250/Kconfig"
19
20 comment "Non-8250 serial port support"
21
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.
30
31           If unsure, say N.
32
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).
41
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.)
48
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.
57
58           If unsure, say N.
59
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).
69
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.)
76
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.
88
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.
100
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.
112
113           If unsure, say Y.  To compile this driver as a module, choose M here:
114           the module will be called sb1250-duart.
115
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).
126
127           If unsure, say Y.
128
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.
138
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).
148
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.
159
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.
163
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.
175
176           To use this, you should create suitable ttyATn device nodes in
177           /dev/, and pass "console=ttyATn" to the kernel.
178
179           Say Y if you have an external 8250/16C550 UART.  If unsure, say N.
180
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).
187
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.
192
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.
197
198           If unsure, say N.
199
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.
206
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).
216
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.
224
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.
235
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.
244
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".
254
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.
264
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
271
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.
289
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.
298
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.)
305
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).
315
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.)
327
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.
338
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.
347
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).
358
359           If unsure, say Y.
360
361 config SERIAL_MAX3100
362         tristate "MAX3100 support"
363         depends on SPI
364         select SERIAL_CORE
365         help
366           MAX3100 chip support
367
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.
378
379           Say Y here if you want to support this ICs.
380
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.
389
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).
400
401           Note that the firmware uses ttyS3 as the serial console on
402           DECstations that use this driver.
403
404           If unsure, say Y.
405
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.
416
417           If unsure, say Y.  To compile this driver as a module, choose M here:
418           the module will be called zs.
419
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).
430
431           Note that the firmware uses ttyS1 as the serial console on the
432           Maxine and ttyS3 on the others using this driver.
433
434           If unsure, say Y.
435
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.
444
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.
452
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.)
459
460 config SERIAL_PXA
461         bool "PXA serial port support (DEPRECATED)"
462         depends on ARCH_PXA || ARCH_MMP
463         select SERIAL_CORE
464         select SERIAL_8250_PXA if SERIAL_8250=y
465         select SERIAL_PXA_NON8250 if !SERIAL_8250=y
466         help
467           If you have a machine based on an Intel XScale PXA2xx CPU you
468           can enable its onboard serial ports by enabling this option.
469
470           Unless you have a specific need, you should use SERIAL_8250_PXA
471           instead of this.
472
473 config SERIAL_PXA_NON8250
474         bool
475         depends on !SERIAL_8250
476
477 config SERIAL_PXA_CONSOLE
478         bool "Console on PXA serial port (DEPRECATED)"
479         depends on SERIAL_PXA
480         select SERIAL_CORE_CONSOLE
481         select SERIAL_8250_CONSOLE if SERIAL_8250=y
482         help
483           If you have enabled the serial port on the Intel XScale PXA
484           CPU you can make it the console by answering Y to this option.
485
486           Even if you say Y here, the currently visible virtual console
487           (/dev/tty0) will still be used as the system console by default, but
488           you can alter that using a kernel command line option such as
489           "console=ttySA0". (Try "man bootparam" or see the documentation of
490           your boot loader (lilo or loadlin) about how to pass options to the
491           kernel at boot time.)
492
493           Unless you have a specific need, you should use SERIAL_8250_PXA
494           and SERIAL_8250_CONSOLE instead of this.
495
496 config SERIAL_SA1100
497         bool "SA1100 serial port support"
498         depends on ARCH_SA1100
499         select SERIAL_CORE
500         select SERIAL_MCTRL_GPIO if GPIOLIB
501         help
502           If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
503           can enable its onboard serial port by enabling this option.
504           Please read <file:Documentation/arm/sa1100/serial_uart.rst> for further
505           info.
506
507 config SERIAL_SA1100_CONSOLE
508         bool "Console on SA1100 serial port"
509         depends on SERIAL_SA1100
510         select SERIAL_CORE_CONSOLE
511         help
512           If you have enabled the serial port on the SA1100/SA1110 StrongARM
513           CPU you can make it the console by answering Y to this option.
514
515           Even if you say Y here, the currently visible virtual console
516           (/dev/tty0) will still be used as the system console by default, but
517           you can alter that using a kernel command line option such as
518           "console=ttySA0". (Try "man bootparam" or see the documentation of
519           your boot loader (lilo or loadlin) about how to pass options to the
520           kernel at boot time.)
521
522 config SERIAL_IMX
523         tristate "IMX serial port support"
524         depends on ARCH_MXC || COMPILE_TEST
525         select SERIAL_CORE
526         select RATIONAL
527         select SERIAL_MCTRL_GPIO if GPIOLIB
528         help
529           If you have a machine based on a Motorola IMX CPU you
530           can enable its onboard serial port by enabling this option.
531
532 config SERIAL_IMX_CONSOLE
533         bool "Console on IMX serial port"
534         depends on SERIAL_IMX=y
535         select SERIAL_CORE_CONSOLE
536         select SERIAL_EARLYCON if OF
537         help
538           If you have enabled the serial port on the Freescale IMX
539           CPU you can make it the console by answering Y to this option.
540
541           Even if you say Y here, the currently visible virtual console
542           (/dev/tty0) will still be used as the system console by default, but
543           you can alter that using a kernel command line option such as
544           "console=ttymxc0". (Try "man bootparam" or see the documentation of
545           your bootloader about how to pass options to the kernel at boot time.)
546
547 config SERIAL_UARTLITE
548         tristate "Xilinx uartlite serial port support"
549         depends on HAS_IOMEM
550         select SERIAL_CORE
551         help
552           Say Y here if you want to use the Xilinx uartlite serial controller.
553
554           To compile this driver as a module, choose M here: the
555           module will be called uartlite.
556
557 config SERIAL_UARTLITE_CONSOLE
558         bool "Support for console on Xilinx uartlite serial port"
559         depends on SERIAL_UARTLITE=y
560         select SERIAL_CORE_CONSOLE
561         select SERIAL_EARLYCON
562         help
563           Say Y here if you wish to use a Xilinx uartlite as the system
564           console (the system console is the device which receives all kernel
565           messages and warnings and which allows logins in single user mode).
566
567 config SERIAL_UARTLITE_NR_UARTS
568         int "Maximum number of uartlite serial ports"
569         depends on SERIAL_UARTLITE
570         range 1 256
571         default 1
572         help
573           Set this to the number of uartlites in your system, or the number
574           you think you might implement.
575
576 config SERIAL_SUNCORE
577         bool
578         depends on SPARC
579         select SERIAL_CORE
580         select SERIAL_CORE_CONSOLE
581         default y
582
583 config SERIAL_SUNZILOG
584         tristate "Sun Zilog8530 serial support"
585         depends on SPARC
586         help
587           This driver supports the Zilog8530 serial ports found on many Sparc
588           systems.  Say Y or M if you want to be able to these serial ports.
589
590 config SERIAL_SUNZILOG_CONSOLE
591         bool "Console on Sun Zilog8530 serial port"
592         depends on SERIAL_SUNZILOG=y
593         help
594           If you would like to be able to use the Zilog8530 serial port
595           on your Sparc system as the console, you can do so by answering
596           Y to this option.
597
598 config SERIAL_SUNSU
599         tristate "Sun SU serial support"
600         depends on SPARC && PCI
601         help
602           This driver supports the 8250 serial ports that run the keyboard and
603           mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
604           to these serial ports.
605
606 config SERIAL_SUNSU_CONSOLE
607         bool "Console on Sun SU serial port"
608         depends on SERIAL_SUNSU=y
609         help
610           If you would like to be able to use the SU serial port
611           on your Sparc system as the console, you can do so by answering
612           Y to this option.
613
614 config SERIAL_MUX
615         tristate "Serial MUX support"
616         depends on GSC
617         select SERIAL_CORE
618         default y
619         ---help---
620           Saying Y here will enable the hardware MUX serial driver for
621           the Nova, K class systems and D class with a 'remote control card'.
622           The hardware MUX is not 8250/16550 compatible therefore the
623           /dev/ttyB0 device is shared between the Serial MUX and the PDC
624           software console. The following steps need to be completed to use
625           the Serial MUX:
626
627             1. create the device entry (mknod /dev/ttyB0 c 11 0)
628             2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
629             3. Add device ttyB0 to /etc/securetty (if you want to log on as
630                  root on this console.)
631             4. Change the kernel command console parameter to: console=ttyB0
632
633 config SERIAL_MUX_CONSOLE
634         bool "Support for console on serial MUX"
635         depends on SERIAL_MUX=y
636         select SERIAL_CORE_CONSOLE
637         default y
638
639 config PDC_CONSOLE
640         bool "PDC software console support"
641         depends on PARISC && !SERIAL_MUX && VT
642         help
643           Saying Y here will enable the software based PDC console to be 
644           used as the system console.  This is useful for machines in 
645           which the hardware based console has not been written yet.  The
646           following steps must be completed to use the PDC console:
647
648             1. create the device entry (mknod /dev/ttyB0 c 11 0)
649             2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
650             3. Add device ttyB0 to /etc/securetty (if you want to log on as
651                  root on this console.)
652             4. Change the kernel command console parameter to: console=ttyB0
653
654 config SERIAL_SUNSAB
655         tristate "Sun Siemens SAB82532 serial support"
656         depends on SPARC && PCI
657         help
658           This driver supports the Siemens SAB82532 DUSCC serial ports on newer
659           (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
660           serial ports.
661
662 config SERIAL_SUNSAB_CONSOLE
663         bool "Console on Sun Siemens SAB82532 serial port"
664         depends on SERIAL_SUNSAB=y
665         help
666           If you would like to be able to use the SAB82532 serial port
667           on your Sparc system as the console, you can do so by answering
668           Y to this option.
669
670 config SERIAL_SUNHV
671         bool "Sun4v Hypervisor Console support"
672         depends on SPARC64
673         help
674           This driver supports the console device found on SUN4V Sparc
675           systems.  Say Y if you want to be able to use this device.
676
677 config SERIAL_IP22_ZILOG
678         tristate "SGI Zilog8530 serial support"
679         depends on SGI_HAS_ZILOG
680         select SERIAL_CORE
681         help
682           This driver supports the Zilog8530 serial ports found on SGI
683           systems.  Say Y or M if you want to be able to these serial ports.
684
685 config SERIAL_IP22_ZILOG_CONSOLE
686         bool "Console on SGI Zilog8530 serial port"
687         depends on SERIAL_IP22_ZILOG=y
688         select SERIAL_CORE_CONSOLE
689
690 config SERIAL_SH_SCI
691         tristate "SuperH SCI(F) serial port support"
692         depends on SUPERH || ARCH_RENESAS || H8300 || COMPILE_TEST
693         select SERIAL_CORE
694         select SERIAL_MCTRL_GPIO if GPIOLIB
695
696 config SERIAL_SH_SCI_NR_UARTS
697         int "Maximum number of SCI(F) serial ports" if EXPERT
698         range 1 64 if 64BIT
699         range 1 32 if !64BIT
700         depends on SERIAL_SH_SCI
701         default "3" if H8300
702         default "10" if SUPERH
703         default "18" if ARCH_RENESAS
704         default "2"
705
706 config SERIAL_SH_SCI_CONSOLE
707         bool "Support for console on SuperH SCI(F)" if EXPERT
708         depends on SERIAL_SH_SCI=y
709         select SERIAL_CORE_CONSOLE
710         default y
711
712 config SERIAL_SH_SCI_EARLYCON
713         bool "Support for early console on SuperH SCI(F)" if EXPERT
714         depends on SERIAL_SH_SCI=y
715         select SERIAL_CORE_CONSOLE
716         select SERIAL_EARLYCON
717         default ARCH_RENESAS || H8300
718
719 config SERIAL_SH_SCI_DMA
720         bool "DMA support" if EXPERT
721         depends on SERIAL_SH_SCI && DMA_ENGINE
722         default ARCH_RENESAS
723
724 config SERIAL_PNX8XXX
725         bool "Enable PNX8XXX SoCs' UART Support"
726         depends on SOC_PNX833X
727         select SERIAL_CORE
728         help
729           If you have a MIPS-based Philips SoC such as PNX8330 and you want
730           to use serial ports, say Y.  Otherwise, say N.
731
732 config SERIAL_PNX8XXX_CONSOLE
733         bool "Enable PNX8XX0 serial console"
734         depends on SERIAL_PNX8XXX
735         select SERIAL_CORE_CONSOLE
736         help
737           If you have a MIPS-based Philips SoC such as PNX8330 and you want
738           to use serial console, say Y. Otherwise, say N.
739
740 config SERIAL_HS_LPC32XX
741         tristate "LPC32XX high speed serial port support"
742         depends on ARCH_LPC32XX && OF
743         select SERIAL_CORE
744         help
745           Support for the LPC32XX high speed serial ports (up to 900kbps).
746           Those are UARTs completely different from the Standard UARTs on the
747           LPC32XX SoC.
748           Choose M or Y here to build this driver.
749
750 config SERIAL_HS_LPC32XX_CONSOLE
751         bool "Enable LPC32XX high speed UART serial console"
752         depends on SERIAL_HS_LPC32XX=y
753         select SERIAL_CORE_CONSOLE
754         help
755           If you would like to be able to use one of the high speed serial
756           ports on the LPC32XX as the console, you can do so by answering
757           Y to this option.
758
759 config SERIAL_CORE
760         tristate
761
762 config SERIAL_CORE_CONSOLE
763         bool
764
765 config CONSOLE_POLL
766         bool
767
768 config SERIAL_MCF
769         bool "Coldfire serial support"
770         depends on COLDFIRE
771         select SERIAL_CORE
772         help
773           This serial driver supports the Freescale Coldfire serial ports.
774
775 config SERIAL_MCF_BAUDRATE
776         int "Default baudrate for Coldfire serial ports"
777         depends on SERIAL_MCF
778         default 19200
779         help
780           This setting lets you define what the default baudrate is for the
781           ColdFire serial ports. The usual default varies from board to board,
782           and this setting is a way of catering for that.
783
784 config SERIAL_MCF_CONSOLE
785         bool "Coldfire serial console support"
786         depends on SERIAL_MCF
787         select SERIAL_CORE_CONSOLE
788         help
789           Enable a ColdFire internal serial port to be the system console.
790
791 config SERIAL_PMACZILOG
792         tristate "Mac or PowerMac z85c30 ESCC support"
793         depends on (M68K && MAC) || PPC_PMAC
794         select SERIAL_CORE
795         help
796           This driver supports the Zilog z85C30 serial ports found on
797           (Power)Mac machines.
798           Say Y or M if you want to be able to these serial ports.
799
800 config SERIAL_PMACZILOG_TTYS
801         bool "Use ttySn device nodes for Zilog z85c30"
802         depends on SERIAL_PMACZILOG
803         help
804           The pmac_zilog driver for the z85C30 chip on many powermacs
805           historically used the device numbers for /dev/ttySn.  The
806           8250 serial port driver also uses these numbers, which means
807           the two drivers being unable to coexist; you could not use
808           both z85C30 and 8250 type ports at the same time.
809
810           If this option is not selected, the pmac_zilog driver will
811           use the device numbers allocated for /dev/ttyPZn.  This allows
812           the pmac_zilog and 8250 drivers to co-exist, but may cause
813           existing userspace setups to break.  Programs that need to
814           access the built-in serial ports on powermacs will need to
815           be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
816
817           If you enable this option, any z85c30 ports in the system will
818           be registered as ttyS0 onwards as in the past, and you will be
819           unable to use the 8250 module for PCMCIA or other 16C550-style
820           UARTs.
821
822           Say N unless you need the z85c30 ports on your (Power)Mac
823           to appear as /dev/ttySn.
824
825 config SERIAL_PMACZILOG_CONSOLE
826         bool "Console on Mac or PowerMac z85c30 serial port"
827         depends on SERIAL_PMACZILOG=y
828         select SERIAL_CORE_CONSOLE
829         help
830           If you would like to be able to use the z85c30 serial port
831           on your (Power)Mac as the console, you can do so by answering
832           Y to this option.
833
834 config SERIAL_CPM
835         tristate "CPM SCC/SMC serial port support"
836         depends on CPM2 || CPM1
837         select SERIAL_CORE
838         help
839           This driver supports the SCC and SMC serial ports on Motorola 
840           embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
841
842 config SERIAL_CPM_CONSOLE
843         bool "Support for console on CPM SCC/SMC serial port"
844         depends on SERIAL_CPM=y
845         select SERIAL_CORE_CONSOLE
846         help
847           Say Y here if you wish to use a SCC or SMC CPM UART as the system
848           console (the system console is the device which receives all kernel
849           messages and warnings and which allows logins in single user mode).
850
851           Even if you say Y here, the currently visible framebuffer console
852           (/dev/tty0) will still be used as the system console by default, but
853           you can alter that using a kernel command line option such as
854           "console=ttyCPM0". (Try "man bootparam" or see the documentation of
855           your boot loader (lilo or loadlin) about how to pass options to the
856           kernel at boot time.)
857
858 config SERIAL_SGI_L1_CONSOLE
859         bool "SGI Altix L1 serial console support"
860         depends on IA64_GENERIC || IA64_SGI_SN2
861         select SERIAL_CORE
862         select SERIAL_CORE_CONSOLE
863         help
864                 If you have an SGI Altix and you would like to use the system
865                 controller serial port as your console (you want this!),
866                 say Y.  Otherwise, say N.
867
868 config SERIAL_PIC32
869         tristate "Microchip PIC32 serial support"
870         depends on MACH_PIC32
871         select SERIAL_CORE
872         help
873           If you have a PIC32, this driver supports the serial ports.
874
875           Say Y or M to use PIC32 serial ports, otherwise say N. Note that
876           to use a serial port as a console, this must be included in kernel and
877           not as a module.
878
879 config SERIAL_PIC32_CONSOLE
880         bool "PIC32 serial console support"
881         depends on SERIAL_PIC32
882         select SERIAL_CORE_CONSOLE
883         help
884           If you have a PIC32, this driver supports the putting a console on one
885           of the serial ports.
886
887           Say Y to use the PIC32 console, otherwise say N.
888
889 config SERIAL_MPC52xx
890         tristate "Freescale MPC52xx/MPC512x family PSC serial support"
891         depends on PPC_MPC52xx || PPC_MPC512x
892         select SERIAL_CORE
893         help
894           This driver supports MPC52xx and MPC512x PSC serial ports. If you would
895           like to use them, you must answer Y or M to this option. Note that
896           for use as console, it must be included in kernel and not as a
897           module.
898
899 config SERIAL_MPC52xx_CONSOLE
900         bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port"
901         depends on SERIAL_MPC52xx=y
902         select SERIAL_CORE_CONSOLE
903         help
904           Select this options if you'd like to use one of the PSC serial port
905           of the Freescale MPC52xx family as a console.
906
907 config SERIAL_MPC52xx_CONSOLE_BAUD
908         int "Freescale MPC52xx/MPC512x family PSC serial port baud"
909         depends on SERIAL_MPC52xx_CONSOLE=y
910         default "9600"
911         help
912           Select the MPC52xx console baud rate.
913           This value is only used if the bootloader doesn't pass in the
914           console baudrate
915
916 config SERIAL_ICOM
917         tristate "IBM Multiport Serial Adapter"
918         depends on PCI && PPC_PSERIES
919         select SERIAL_CORE
920         select FW_LOADER
921         help
922           This driver is for a family of multiport serial adapters
923           including 2 port RVX, 2 port internal modem, 4 port internal
924           modem and a split 1 port RVX and 1 port internal modem.
925
926           This driver can also be built as a module.  If so, the module
927           will be called icom.
928
929 config SERIAL_TXX9
930         bool "TMPTX39XX/49XX SIO support"
931         depends on HAS_TXX9_SERIAL
932         select SERIAL_CORE
933         default y
934
935 config HAS_TXX9_SERIAL
936         bool
937
938 config SERIAL_TXX9_NR_UARTS
939         int "Maximum number of TMPTX39XX/49XX SIO ports"
940         depends on SERIAL_TXX9
941         default "6"
942
943 config SERIAL_TXX9_CONSOLE
944         bool "TMPTX39XX/49XX SIO Console support"
945         depends on SERIAL_TXX9=y
946         select SERIAL_CORE_CONSOLE
947
948 config SERIAL_TXX9_STDSERIAL
949         bool "TX39XX/49XX SIO act as standard serial"
950         depends on !SERIAL_8250 && SERIAL_TXX9
951
952 config SERIAL_VR41XX
953         tristate "NEC VR4100 series Serial Interface Unit support"
954         depends on CPU_VR41XX
955         select SERIAL_CORE
956         help
957           If you have a NEC VR4100 series processor and you want to use
958           Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU)
959           (not include VR4111/VR4121 DSIU), say Y.  Otherwise, say N.
960
961 config SERIAL_VR41XX_CONSOLE
962         bool "Enable NEC VR4100 series Serial Interface Unit console"
963         depends on SERIAL_VR41XX=y
964         select SERIAL_CORE_CONSOLE
965         help
966           If you have a NEC VR4100 series processor and you want to use
967           a console on a serial port, say Y.  Otherwise, say N.
968
969 config SERIAL_JSM
970         tristate "Digi International NEO and Classic PCI Support"
971         depends on PCI
972         select SERIAL_CORE
973         help
974           This is a driver for Digi International's Neo and Classic series
975           of cards which provide multiple serial ports. You would need
976           something like this to connect more than two modems to your Linux
977           box, for instance in order to become a dial-in server. This driver
978           supports PCI boards only.
979
980           If you have a card like this, say Y here, otherwise say N.
981
982           To compile this driver as a module, choose M here: the
983           module will be called jsm.
984
985 config SERIAL_SGI_IOC4
986         tristate "SGI IOC4 controller serial support"
987         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC4
988         select SERIAL_CORE
989         help
990                 If you have an SGI Altix with an IOC4 based Base IO card
991                 and wish to use the serial ports on this card, say Y.
992                 Otherwise, say N.
993
994 config SERIAL_SGI_IOC3
995         tristate "SGI Altix IOC3 serial support"
996         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC3
997         select SERIAL_CORE
998         help
999           If you have an SGI Altix with an IOC3 serial card,
1000           say Y or M.  Otherwise, say N.
1001
1002 config SERIAL_MSM
1003         tristate "MSM on-chip serial port support"
1004         depends on ARCH_QCOM
1005         select SERIAL_CORE
1006
1007 config SERIAL_MSM_CONSOLE
1008         bool "MSM serial console support"
1009         depends on SERIAL_MSM=y
1010         select SERIAL_CORE_CONSOLE
1011         select SERIAL_EARLYCON
1012
1013 config SERIAL_QCOM_GENI
1014         tristate "QCOM on-chip GENI based serial port support"
1015         depends on ARCH_QCOM || COMPILE_TEST
1016         depends on QCOM_GENI_SE
1017         select SERIAL_CORE
1018
1019 config SERIAL_QCOM_GENI_CONSOLE
1020         bool "QCOM GENI Serial Console support"
1021         depends on SERIAL_QCOM_GENI=y
1022         select SERIAL_CORE_CONSOLE
1023         select SERIAL_EARLYCON
1024         help
1025           Serial console driver for Qualcomm Technologies Inc's GENI based
1026           QUP hardware.
1027
1028 config SERIAL_VT8500
1029         bool "VIA VT8500 on-chip serial port support"
1030         depends on ARCH_VT8500
1031         select SERIAL_CORE
1032
1033 config SERIAL_VT8500_CONSOLE
1034         bool "VIA VT8500 serial console support"
1035         depends on SERIAL_VT8500=y
1036         select SERIAL_CORE_CONSOLE
1037
1038 config SERIAL_OMAP
1039         tristate "OMAP serial port support"
1040         depends on ARCH_OMAP2PLUS
1041         select SERIAL_CORE
1042         help
1043           If you have a machine based on an Texas Instruments OMAP CPU you
1044           can enable its onboard serial ports by enabling this option.
1045
1046           By enabling this option you take advantage of dma feature available
1047           with the omap-serial driver. DMA support can be enabled from platform
1048           data.
1049
1050 config SERIAL_OMAP_CONSOLE
1051         bool "Console on OMAP serial port"
1052         depends on SERIAL_OMAP=y
1053         select SERIAL_CORE_CONSOLE
1054         help
1055           Select this option if you would like to use omap serial port as
1056           console.
1057
1058           Even if you say Y here, the currently visible virtual console
1059           (/dev/tty0) will still be used as the system console by default, but
1060           you can alter that using a kernel command line option such as
1061           "console=ttyOx". (Try "man bootparam" or see the documentation of
1062           your boot loader about how to pass options to the kernel at
1063           boot time.)
1064
1065 config SERIAL_SIFIVE
1066         tristate "SiFive UART support"
1067         depends on OF
1068         select SERIAL_CORE
1069         help
1070           Select this option if you are building a kernel for a device that
1071           contains a SiFive UART IP block.  This type of UART is present on
1072           SiFive FU540 SoCs, among others.
1073
1074 config SERIAL_SIFIVE_CONSOLE
1075         bool "Console on SiFive UART"
1076         depends on SERIAL_SIFIVE=y
1077         select SERIAL_CORE_CONSOLE
1078         help
1079           Select this option if you would like to use a SiFive UART as the
1080           system console.
1081
1082           Even if you say Y here, the currently visible virtual console
1083           (/dev/tty0) will still be used as the system console by default, but
1084           you can alter that using a kernel command line option such as
1085           "console=ttySIFx". (Try "man bootparam" or see the documentation of
1086           your boot loader about how to pass options to the kernel at
1087           boot time.)
1088
1089 config SERIAL_LANTIQ
1090         bool "Lantiq serial driver"
1091         depends on LANTIQ
1092         select SERIAL_CORE
1093         select SERIAL_CORE_CONSOLE
1094         select SERIAL_EARLYCON
1095         help
1096           Support for console and UART on Lantiq SoCs.
1097
1098 config SERIAL_QE
1099         tristate "Freescale QUICC Engine serial port support"
1100         depends on QUICC_ENGINE
1101         select SERIAL_CORE
1102         select FW_LOADER
1103         help
1104           This driver supports the QE serial ports on Freescale embedded
1105           PowerPC that contain a QUICC Engine.
1106
1107 config SERIAL_SCCNXP
1108         tristate "SCCNXP serial port support"
1109         select SERIAL_CORE
1110         help
1111           This selects support for an advanced UART from NXP (Philips).
1112           Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1113           SC28L202, SCC68681 and SCC68692.
1114
1115 config SERIAL_SCCNXP_CONSOLE
1116         bool "Console on SCCNXP serial port"
1117         depends on SERIAL_SCCNXP=y
1118         select SERIAL_CORE_CONSOLE
1119         help
1120           Support for console on SCCNXP serial ports.
1121
1122 config SERIAL_SC16IS7XX_CORE
1123         tristate
1124
1125 config SERIAL_SC16IS7XX
1126         tristate "SC16IS7xx serial support"
1127         select SERIAL_CORE
1128         depends on (SPI_MASTER && !I2C) || I2C
1129         help
1130           This selects support for SC16IS7xx serial ports.
1131           Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1132           SC16IS760 and SC16IS762. Select supported buses using options below.
1133
1134 config SERIAL_SC16IS7XX_I2C
1135         bool "SC16IS7xx for I2C interface"
1136         depends on SERIAL_SC16IS7XX
1137         depends on I2C
1138         select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1139         select REGMAP_I2C if I2C
1140         default y
1141         help
1142           Enable SC16IS7xx driver on I2C bus,
1143           If required say y, and say n to i2c if not required,
1144           Enabled by default to support oldconfig.
1145           You must select at least one bus for the driver to be built.
1146
1147 config SERIAL_SC16IS7XX_SPI
1148         bool "SC16IS7xx for spi interface"
1149         depends on SERIAL_SC16IS7XX
1150         depends on SPI_MASTER
1151         select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1152         select REGMAP_SPI if SPI_MASTER
1153         help
1154           Enable SC16IS7xx driver on SPI bus,
1155           If required say y, and say n to spi if not required,
1156           This is additional support to exsisting driver.
1157           You must select at least one bus for the driver to be built.
1158
1159 config SERIAL_TIMBERDALE
1160         tristate "Support for timberdale UART"
1161         select SERIAL_CORE
1162         depends on X86_32 || COMPILE_TEST
1163         ---help---
1164         Add support for UART controller on timberdale.
1165
1166 config SERIAL_BCM63XX
1167         tristate "Broadcom BCM63xx/BCM33xx UART support"
1168         select SERIAL_CORE
1169         depends on MIPS || ARM || COMPILE_TEST
1170         help
1171           This enables the driver for the onchip UART core found on
1172           the following chipsets:
1173
1174             BCM33xx (cable modem)
1175             BCM63xx/BCM63xxx (DSL)
1176             BCM68xx (PON)
1177             BCM7xxx (STB) - DOCSIS console
1178
1179 config SERIAL_BCM63XX_CONSOLE
1180         bool "Console on BCM63xx serial port"
1181         depends on SERIAL_BCM63XX=y
1182         select SERIAL_CORE_CONSOLE
1183         select SERIAL_EARLYCON
1184         help
1185           If you have enabled the serial port on the BCM63xx CPU
1186           you can make it the console by answering Y to this option.
1187
1188 config SERIAL_GRLIB_GAISLER_APBUART
1189         tristate "GRLIB APBUART serial support"
1190         depends on OF && SPARC
1191         select SERIAL_CORE
1192         ---help---
1193         Add support for the GRLIB APBUART serial port.
1194
1195 config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1196         bool "Console on GRLIB APBUART serial port"
1197         depends on SERIAL_GRLIB_GAISLER_APBUART=y
1198         select SERIAL_CORE_CONSOLE
1199         help
1200         Support for running a console on the GRLIB APBUART
1201
1202 config SERIAL_ALTERA_JTAGUART
1203         tristate "Altera JTAG UART support"
1204         select SERIAL_CORE
1205         help
1206           This driver supports the Altera JTAG UART port.
1207
1208 config SERIAL_ALTERA_JTAGUART_CONSOLE
1209         bool "Altera JTAG UART console support"
1210         depends on SERIAL_ALTERA_JTAGUART=y
1211         select SERIAL_CORE_CONSOLE
1212         select SERIAL_EARLYCON
1213         help
1214           Enable a Altera JTAG UART port to be the system console.
1215
1216 config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1217         bool "Bypass output when no connection"
1218         depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1219         select SERIAL_CORE_CONSOLE
1220         help
1221           Bypass console output and keep going even if there is no
1222           JTAG terminal connection with the host.
1223
1224 config SERIAL_ALTERA_UART
1225         tristate "Altera UART support"
1226         select SERIAL_CORE
1227         help
1228           This driver supports the Altera softcore UART port.
1229
1230 config SERIAL_ALTERA_UART_MAXPORTS
1231         int "Maximum number of Altera UART ports"
1232         depends on SERIAL_ALTERA_UART
1233         default 4
1234         help
1235           This setting lets you define the maximum number of the Altera
1236           UART ports. The usual default varies from board to board, and
1237           this setting is a way of catering for that.
1238
1239 config SERIAL_ALTERA_UART_BAUDRATE
1240         int "Default baudrate for Altera UART ports"
1241         depends on SERIAL_ALTERA_UART
1242         default 115200
1243         help
1244           This setting lets you define what the default baudrate is for the
1245           Altera UART ports. The usual default varies from board to board,
1246           and this setting is a way of catering for that.
1247
1248 config SERIAL_ALTERA_UART_CONSOLE
1249         bool "Altera UART console support"
1250         depends on SERIAL_ALTERA_UART=y
1251         select SERIAL_CORE_CONSOLE
1252         select SERIAL_EARLYCON
1253         help
1254           Enable a Altera UART port to be the system console.
1255
1256 config SERIAL_IFX6X60
1257         tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)"
1258         depends on GPIOLIB || COMPILE_TEST
1259         depends on SPI && HAS_DMA
1260         help
1261           Support for the IFX6x60 modem devices on Intel MID platforms.
1262
1263 config SERIAL_PCH_UART
1264         tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1265         depends on PCI && (X86_32 || MIPS ||  COMPILE_TEST)
1266         select SERIAL_CORE
1267         help
1268           This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1269           which is an IOH(Input/Output Hub) for x86 embedded processor.
1270           Enabling PCH_DMA, this PCH UART works as DMA mode.
1271
1272           This driver also can be used for LAPIS Semiconductor IOH(Input/
1273           Output Hub), ML7213, ML7223 and ML7831.
1274           ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1275           for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1276           ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1277           ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1278
1279 config SERIAL_PCH_UART_CONSOLE
1280         bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1281         depends on SERIAL_PCH_UART=y
1282         select SERIAL_CORE_CONSOLE
1283         help
1284           Say Y here if you wish to use the PCH UART as the system console
1285           (the system  console is the device which receives all kernel messages and
1286           warnings and which allows logins in single user mode).
1287
1288 config SERIAL_MXS_AUART
1289         tristate "MXS AUART support"
1290         depends on ARCH_MXS || MACH_ASM9260 || COMPILE_TEST
1291         select SERIAL_CORE
1292         select SERIAL_MCTRL_GPIO if GPIOLIB
1293         help
1294           This driver supports the MXS and Alphascale ASM9260 Application
1295           UART (AUART) port.
1296
1297 config SERIAL_MXS_AUART_CONSOLE
1298         bool "MXS AUART console support"
1299         depends on SERIAL_MXS_AUART=y
1300         select SERIAL_CORE_CONSOLE
1301         help
1302           Enable a MXS AUART port to be the system console.
1303
1304 config SERIAL_XILINX_PS_UART
1305         tristate "Cadence (Xilinx Zynq) UART support"
1306         depends on OF
1307         select SERIAL_CORE
1308         help
1309           This driver supports the Cadence UART. It is found e.g. in Xilinx
1310           Zynq.
1311
1312 config SERIAL_XILINX_PS_UART_CONSOLE
1313         bool "Cadence UART console support"
1314         depends on SERIAL_XILINX_PS_UART=y
1315         select SERIAL_CORE_CONSOLE
1316         select SERIAL_EARLYCON
1317         help
1318           Enable a Cadence UART port to be the system console.
1319
1320 config SERIAL_AR933X
1321         tristate "AR933X serial port support"
1322         depends on HAVE_CLK && ATH79
1323         select SERIAL_CORE
1324         help
1325           If you have an Atheros AR933X SOC based board and want to use the
1326           built-in UART of the SoC, say Y to this option.
1327
1328           To compile this driver as a module, choose M here: the
1329           module will be called ar933x_uart.
1330
1331 config SERIAL_AR933X_CONSOLE
1332         bool "Console on AR933X serial port"
1333         depends on SERIAL_AR933X=y
1334         select SERIAL_CORE_CONSOLE
1335         help
1336           Enable a built-in UART port of the AR933X to be the system console.
1337
1338 config SERIAL_AR933X_NR_UARTS
1339         int "Maximum number of AR933X serial ports"
1340         depends on SERIAL_AR933X
1341         default "2"
1342         help
1343           Set this to the number of serial ports you want the driver
1344           to support.
1345
1346 config SERIAL_EFM32_UART
1347         tristate "EFM32 UART/USART port"
1348         depends on ARM && (ARCH_EFM32 || COMPILE_TEST)
1349         select SERIAL_CORE
1350         help
1351           This driver support the USART and UART ports on
1352           Energy Micro's efm32 SoCs.
1353
1354 config SERIAL_MPS2_UART_CONSOLE
1355         bool "MPS2 UART console support"
1356         depends on SERIAL_MPS2_UART
1357         select SERIAL_CORE_CONSOLE
1358         select SERIAL_EARLYCON
1359
1360 config SERIAL_MPS2_UART
1361         bool "MPS2 UART port"
1362         depends on ARCH_MPS2 || COMPILE_TEST
1363         select SERIAL_CORE
1364         help
1365           This driver support the UART ports on ARM MPS2.
1366
1367 config SERIAL_EFM32_UART_CONSOLE
1368         bool "EFM32 UART/USART console support"
1369         depends on SERIAL_EFM32_UART=y
1370         select SERIAL_CORE_CONSOLE
1371
1372 config SERIAL_ARC
1373         tristate "ARC UART driver support"
1374         select SERIAL_CORE
1375         help
1376           Driver for on-chip UART for ARC(Synopsys) for the legacy
1377           FPGA Boards (ML50x/ARCAngel4)
1378
1379 config SERIAL_ARC_CONSOLE
1380         bool "Console on ARC UART"
1381         depends on SERIAL_ARC=y
1382         select SERIAL_CORE_CONSOLE
1383         select SERIAL_EARLYCON
1384         help
1385           Enable system Console on ARC UART
1386
1387 config SERIAL_ARC_NR_PORTS
1388         int "Number of ARC UART ports"
1389         depends on SERIAL_ARC
1390         range 1 3
1391         default "1"
1392         help
1393           Set this to the number of serial ports you want the driver
1394           to support.
1395
1396 config SERIAL_RP2
1397         tristate "Comtrol RocketPort EXPRESS/INFINITY support"
1398         depends on PCI
1399         select SERIAL_CORE
1400         help
1401           This driver supports the Comtrol RocketPort EXPRESS and
1402           RocketPort INFINITY families of PCI/PCIe multiport serial adapters.
1403           These adapters use a "RocketPort 2" ASIC that is not compatible
1404           with the original RocketPort driver (CONFIG_ROCKETPORT).
1405
1406           To compile this driver as a module, choose M here: the
1407           module will be called rp2.
1408
1409           If you want to compile this driver into the kernel, say Y here.  If
1410           you don't have a suitable RocketPort card installed, say N.
1411
1412 config SERIAL_RP2_NR_UARTS
1413         int "Maximum number of RocketPort EXPRESS/INFINITY ports"
1414         depends on SERIAL_RP2
1415         default "32"
1416         help
1417           If multiple cards are present, the default limit of 32 ports may
1418           need to be increased.
1419
1420 config SERIAL_FSL_LPUART
1421         tristate "Freescale lpuart serial port support"
1422         depends on HAS_DMA
1423         select SERIAL_CORE
1424         help
1425           Support for the on-chip lpuart on some Freescale SOCs.
1426
1427 config SERIAL_FSL_LPUART_CONSOLE
1428         bool "Console on Freescale lpuart serial port"
1429         depends on SERIAL_FSL_LPUART=y
1430         select SERIAL_CORE_CONSOLE
1431         select SERIAL_EARLYCON
1432         help
1433           If you have enabled the lpuart serial port on the Freescale SoCs,
1434           you can make it the console by answering Y to this option.
1435
1436 config SERIAL_CONEXANT_DIGICOLOR
1437         tristate "Conexant Digicolor CX92xxx USART serial port support"
1438         depends on OF
1439         select SERIAL_CORE
1440         help
1441           Support for the on-chip USART on Conexant Digicolor SoCs.
1442
1443 config SERIAL_CONEXANT_DIGICOLOR_CONSOLE
1444         bool "Console on Conexant Digicolor serial port"
1445         depends on SERIAL_CONEXANT_DIGICOLOR=y
1446         select SERIAL_CORE_CONSOLE
1447         help
1448           If you have enabled the USART serial port on Conexant Digicolor
1449           SoCs, you can make it the console by answering Y to this option.
1450
1451 config SERIAL_ST_ASC
1452         tristate "ST ASC serial port support"
1453         select SERIAL_CORE
1454         depends on ARM || COMPILE_TEST
1455         help
1456           This driver is for the on-chip Asychronous Serial Controller on
1457           STMicroelectronics STi SoCs.
1458           ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality.
1459           It support all industry standard baud rates.
1460
1461           If unsure, say N.
1462
1463 config SERIAL_ST_ASC_CONSOLE
1464         bool "Support for console on ST ASC"
1465         depends on SERIAL_ST_ASC=y
1466         select SERIAL_CORE_CONSOLE
1467
1468 config SERIAL_MEN_Z135
1469         tristate "MEN 16z135 Support"
1470         select SERIAL_CORE
1471         depends on MCB
1472         help
1473           Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core
1474           on a MCB carrier.
1475
1476           This driver can also be build as a module. If so, the module will be called
1477           men_z135_uart.ko
1478
1479 config SERIAL_SPRD
1480         tristate "Support for Spreadtrum serial"
1481         depends on ARCH_SPRD
1482         select SERIAL_CORE
1483         help
1484           This enables the driver for the Spreadtrum's serial.
1485
1486 config SERIAL_SPRD_CONSOLE
1487         bool "Spreadtrum UART console support"
1488         depends on SERIAL_SPRD=y
1489         select SERIAL_CORE_CONSOLE
1490         select SERIAL_EARLYCON
1491         help
1492           Support for early debug console using Spreadtrum's serial. This enables
1493           the console before standard serial driver is probed. This is enabled
1494           with "earlycon" on the kernel command line. The console is
1495           enabled when early_param is processed.
1496
1497 config SERIAL_STM32
1498         tristate "STMicroelectronics STM32 serial port support"
1499         select SERIAL_CORE
1500         depends on ARCH_STM32 || COMPILE_TEST
1501         help
1502           This driver is for the on-chip Serial Controller on
1503           STMicroelectronics STM32 MCUs.
1504           USART supports Rx & Tx functionality.
1505           It support all industry standard baud rates.
1506
1507           If unsure, say N.
1508
1509 config SERIAL_STM32_CONSOLE
1510         bool "Support for console on STM32"
1511         depends on SERIAL_STM32=y
1512         select SERIAL_CORE_CONSOLE
1513
1514 config SERIAL_MVEBU_UART
1515         bool "Marvell EBU serial port support"
1516         depends on ARCH_MVEBU || COMPILE_TEST
1517         select SERIAL_CORE
1518         help
1519           This driver is for Marvell EBU SoC's UART. If you have a machine
1520           based on the Armada-3700 SoC and wish to use the on-board serial
1521           port,
1522           say 'Y' here.
1523           Otherwise, say 'N'.
1524
1525 config SERIAL_MVEBU_CONSOLE
1526         bool "Console on Marvell EBU serial port"
1527         depends on SERIAL_MVEBU_UART
1528         select SERIAL_CORE_CONSOLE
1529         select SERIAL_EARLYCON
1530         default y
1531         help
1532           Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1533           (the system console is the device which receives all kernel messages
1534           and warnings and which allows logins in single user mode)
1535           Otherwise, say 'N'.
1536
1537 config SERIAL_OWL
1538         tristate "Actions Semi Owl serial port support"
1539         depends on ARCH_ACTIONS || COMPILE_TEST
1540         select SERIAL_CORE
1541         help
1542           This driver is for Actions Semiconductor S500/S900 SoC's UART.
1543           Say 'Y' here if you wish to use the on-board serial port.
1544           Otherwise, say 'N'.
1545
1546 config SERIAL_OWL_CONSOLE
1547         bool "Console on Actions Semi Owl serial port"
1548         depends on SERIAL_OWL=y
1549         select SERIAL_CORE_CONSOLE
1550         select SERIAL_EARLYCON
1551         default y
1552         help
1553           Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART
1554           as the system console.
1555
1556 config SERIAL_RDA
1557         bool "RDA Micro serial port support"
1558         depends on ARCH_RDA || COMPILE_TEST
1559         select SERIAL_CORE
1560         help
1561           This driver is for RDA8810PL SoC's UART.
1562           Say 'Y' here if you wish to use the on-board serial port.
1563           Otherwise, say 'N'.
1564
1565 config SERIAL_RDA_CONSOLE
1566         bool "Console on RDA Micro serial port"
1567         depends on SERIAL_RDA=y
1568         select SERIAL_CORE_CONSOLE
1569         select SERIAL_EARLYCON
1570         default y
1571         help
1572           Say 'Y' here if you wish to use the RDA8810PL UART as the system
1573           console. Only earlycon is implemented currently.
1574
1575 config SERIAL_MILBEAUT_USIO
1576         tristate "Milbeaut USIO/UART serial port support"
1577         depends on ARCH_MILBEAUT || (COMPILE_TEST && OF)
1578         default ARCH_MILBEAUT
1579         select SERIAL_CORE
1580         help
1581           This selects the USIO/UART IP found in Socionext Milbeaut SoCs.
1582
1583 config SERIAL_MILBEAUT_USIO_PORTS
1584         int "Maximum number of CSIO/UART ports (1-8)"
1585         range 1 8
1586         depends on SERIAL_MILBEAUT_USIO
1587         default "4"
1588
1589 config SERIAL_MILBEAUT_USIO_CONSOLE
1590         bool "Support for console on MILBEAUT USIO/UART serial port"
1591         depends on SERIAL_MILBEAUT_USIO=y
1592         default y
1593         select SERIAL_CORE_CONSOLE
1594         select SERIAL_EARLYCON
1595         help
1596           Say 'Y' here if you wish to use a USIO/UART of Socionext Milbeaut
1597           SoCs as the system console (the system console is the device which
1598           receives all kernel messages and warnings and which allows logins in
1599           single user mode).
1600
1601 endmenu
1602
1603 config SERIAL_MCTRL_GPIO
1604         tristate
1605
1606 endif # TTY