518aac902e4bf59a7831a6b17519e28cd9127ffe
[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 || COMPILE_TEST
743         depends on OF
744         select SERIAL_CORE
745         help
746           Support for the LPC32XX high speed serial ports (up to 900kbps).
747           Those are UARTs completely different from the Standard UARTs on the
748           LPC32XX SoC.
749           Choose M or Y here to build this driver.
750
751 config SERIAL_HS_LPC32XX_CONSOLE
752         bool "Enable LPC32XX high speed UART serial console"
753         depends on SERIAL_HS_LPC32XX=y
754         select SERIAL_CORE_CONSOLE
755         help
756           If you would like to be able to use one of the high speed serial
757           ports on the LPC32XX as the console, you can do so by answering
758           Y to this option.
759
760 config SERIAL_CORE
761         tristate
762
763 config SERIAL_CORE_CONSOLE
764         bool
765
766 config CONSOLE_POLL
767         bool
768
769 config SERIAL_MCF
770         bool "Coldfire serial support"
771         depends on COLDFIRE
772         select SERIAL_CORE
773         help
774           This serial driver supports the Freescale Coldfire serial ports.
775
776 config SERIAL_MCF_BAUDRATE
777         int "Default baudrate for Coldfire serial ports"
778         depends on SERIAL_MCF
779         default 19200
780         help
781           This setting lets you define what the default baudrate is for the
782           ColdFire serial ports. The usual default varies from board to board,
783           and this setting is a way of catering for that.
784
785 config SERIAL_MCF_CONSOLE
786         bool "Coldfire serial console support"
787         depends on SERIAL_MCF
788         select SERIAL_CORE_CONSOLE
789         help
790           Enable a ColdFire internal serial port to be the system console.
791
792 config SERIAL_PMACZILOG
793         tristate "Mac or PowerMac z85c30 ESCC support"
794         depends on (M68K && MAC) || PPC_PMAC
795         select SERIAL_CORE
796         help
797           This driver supports the Zilog z85C30 serial ports found on
798           (Power)Mac machines.
799           Say Y or M if you want to be able to these serial ports.
800
801 config SERIAL_PMACZILOG_TTYS
802         bool "Use ttySn device nodes for Zilog z85c30"
803         depends on SERIAL_PMACZILOG
804         help
805           The pmac_zilog driver for the z85C30 chip on many powermacs
806           historically used the device numbers for /dev/ttySn.  The
807           8250 serial port driver also uses these numbers, which means
808           the two drivers being unable to coexist; you could not use
809           both z85C30 and 8250 type ports at the same time.
810
811           If this option is not selected, the pmac_zilog driver will
812           use the device numbers allocated for /dev/ttyPZn.  This allows
813           the pmac_zilog and 8250 drivers to co-exist, but may cause
814           existing userspace setups to break.  Programs that need to
815           access the built-in serial ports on powermacs will need to
816           be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
817
818           If you enable this option, any z85c30 ports in the system will
819           be registered as ttyS0 onwards as in the past, and you will be
820           unable to use the 8250 module for PCMCIA or other 16C550-style
821           UARTs.
822
823           Say N unless you need the z85c30 ports on your (Power)Mac
824           to appear as /dev/ttySn.
825
826 config SERIAL_PMACZILOG_CONSOLE
827         bool "Console on Mac or PowerMac z85c30 serial port"
828         depends on SERIAL_PMACZILOG=y
829         select SERIAL_CORE_CONSOLE
830         help
831           If you would like to be able to use the z85c30 serial port
832           on your (Power)Mac as the console, you can do so by answering
833           Y to this option.
834
835 config SERIAL_CPM
836         tristate "CPM SCC/SMC serial port support"
837         depends on CPM2 || CPM1
838         select SERIAL_CORE
839         help
840           This driver supports the SCC and SMC serial ports on Motorola 
841           embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
842
843 config SERIAL_CPM_CONSOLE
844         bool "Support for console on CPM SCC/SMC serial port"
845         depends on SERIAL_CPM=y
846         select SERIAL_CORE_CONSOLE
847         help
848           Say Y here if you wish to use a SCC or SMC CPM UART as the system
849           console (the system console is the device which receives all kernel
850           messages and warnings and which allows logins in single user mode).
851
852           Even if you say Y here, the currently visible framebuffer console
853           (/dev/tty0) will still be used as the system console by default, but
854           you can alter that using a kernel command line option such as
855           "console=ttyCPM0". (Try "man bootparam" or see the documentation of
856           your boot loader (lilo or loadlin) about how to pass options to the
857           kernel at boot time.)
858
859 config SERIAL_SGI_L1_CONSOLE
860         bool "SGI Altix L1 serial console support"
861         depends on IA64_GENERIC || IA64_SGI_SN2
862         select SERIAL_CORE
863         select SERIAL_CORE_CONSOLE
864         help
865                 If you have an SGI Altix and you would like to use the system
866                 controller serial port as your console (you want this!),
867                 say Y.  Otherwise, say N.
868
869 config SERIAL_PIC32
870         tristate "Microchip PIC32 serial support"
871         depends on MACH_PIC32
872         select SERIAL_CORE
873         help
874           If you have a PIC32, this driver supports the serial ports.
875
876           Say Y or M to use PIC32 serial ports, otherwise say N. Note that
877           to use a serial port as a console, this must be included in kernel and
878           not as a module.
879
880 config SERIAL_PIC32_CONSOLE
881         bool "PIC32 serial console support"
882         depends on SERIAL_PIC32
883         select SERIAL_CORE_CONSOLE
884         help
885           If you have a PIC32, this driver supports the putting a console on one
886           of the serial ports.
887
888           Say Y to use the PIC32 console, otherwise say N.
889
890 config SERIAL_MPC52xx
891         tristate "Freescale MPC52xx/MPC512x family PSC serial support"
892         depends on PPC_MPC52xx || PPC_MPC512x
893         select SERIAL_CORE
894         help
895           This driver supports MPC52xx and MPC512x PSC serial ports. If you would
896           like to use them, you must answer Y or M to this option. Note that
897           for use as console, it must be included in kernel and not as a
898           module.
899
900 config SERIAL_MPC52xx_CONSOLE
901         bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port"
902         depends on SERIAL_MPC52xx=y
903         select SERIAL_CORE_CONSOLE
904         help
905           Select this options if you'd like to use one of the PSC serial port
906           of the Freescale MPC52xx family as a console.
907
908 config SERIAL_MPC52xx_CONSOLE_BAUD
909         int "Freescale MPC52xx/MPC512x family PSC serial port baud"
910         depends on SERIAL_MPC52xx_CONSOLE=y
911         default "9600"
912         help
913           Select the MPC52xx console baud rate.
914           This value is only used if the bootloader doesn't pass in the
915           console baudrate
916
917 config SERIAL_ICOM
918         tristate "IBM Multiport Serial Adapter"
919         depends on PCI && PPC_PSERIES
920         select SERIAL_CORE
921         select FW_LOADER
922         help
923           This driver is for a family of multiport serial adapters
924           including 2 port RVX, 2 port internal modem, 4 port internal
925           modem and a split 1 port RVX and 1 port internal modem.
926
927           This driver can also be built as a module.  If so, the module
928           will be called icom.
929
930 config SERIAL_TXX9
931         bool "TMPTX39XX/49XX SIO support"
932         depends on HAS_TXX9_SERIAL
933         select SERIAL_CORE
934         default y
935
936 config HAS_TXX9_SERIAL
937         bool
938
939 config SERIAL_TXX9_NR_UARTS
940         int "Maximum number of TMPTX39XX/49XX SIO ports"
941         depends on SERIAL_TXX9
942         default "6"
943
944 config SERIAL_TXX9_CONSOLE
945         bool "TMPTX39XX/49XX SIO Console support"
946         depends on SERIAL_TXX9=y
947         select SERIAL_CORE_CONSOLE
948
949 config SERIAL_TXX9_STDSERIAL
950         bool "TX39XX/49XX SIO act as standard serial"
951         depends on !SERIAL_8250 && SERIAL_TXX9
952
953 config SERIAL_VR41XX
954         tristate "NEC VR4100 series Serial Interface Unit support"
955         depends on CPU_VR41XX
956         select SERIAL_CORE
957         help
958           If you have a NEC VR4100 series processor and you want to use
959           Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU)
960           (not include VR4111/VR4121 DSIU), say Y.  Otherwise, say N.
961
962 config SERIAL_VR41XX_CONSOLE
963         bool "Enable NEC VR4100 series Serial Interface Unit console"
964         depends on SERIAL_VR41XX=y
965         select SERIAL_CORE_CONSOLE
966         help
967           If you have a NEC VR4100 series processor and you want to use
968           a console on a serial port, say Y.  Otherwise, say N.
969
970 config SERIAL_JSM
971         tristate "Digi International NEO and Classic PCI Support"
972         depends on PCI
973         select SERIAL_CORE
974         help
975           This is a driver for Digi International's Neo and Classic series
976           of cards which provide multiple serial ports. You would need
977           something like this to connect more than two modems to your Linux
978           box, for instance in order to become a dial-in server. This driver
979           supports PCI boards only.
980
981           If you have a card like this, say Y here, otherwise say N.
982
983           To compile this driver as a module, choose M here: the
984           module will be called jsm.
985
986 config SERIAL_SGI_IOC4
987         tristate "SGI IOC4 controller serial support"
988         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC4
989         select SERIAL_CORE
990         help
991                 If you have an SGI Altix with an IOC4 based Base IO card
992                 and wish to use the serial ports on this card, say Y.
993                 Otherwise, say N.
994
995 config SERIAL_SGI_IOC3
996         tristate "SGI Altix IOC3 serial support"
997         depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC3
998         select SERIAL_CORE
999         help
1000           If you have an SGI Altix with an IOC3 serial card,
1001           say Y or M.  Otherwise, say N.
1002
1003 config SERIAL_MSM
1004         tristate "MSM on-chip serial port support"
1005         depends on ARCH_QCOM
1006         select SERIAL_CORE
1007
1008 config SERIAL_MSM_CONSOLE
1009         bool "MSM serial console support"
1010         depends on SERIAL_MSM=y
1011         select SERIAL_CORE_CONSOLE
1012         select SERIAL_EARLYCON
1013
1014 config SERIAL_QCOM_GENI
1015         tristate "QCOM on-chip GENI based serial port support"
1016         depends on ARCH_QCOM || COMPILE_TEST
1017         depends on QCOM_GENI_SE
1018         select SERIAL_CORE
1019
1020 config SERIAL_QCOM_GENI_CONSOLE
1021         bool "QCOM GENI Serial Console support"
1022         depends on SERIAL_QCOM_GENI=y
1023         select SERIAL_CORE_CONSOLE
1024         select SERIAL_EARLYCON
1025         help
1026           Serial console driver for Qualcomm Technologies Inc's GENI based
1027           QUP hardware.
1028
1029 config SERIAL_VT8500
1030         bool "VIA VT8500 on-chip serial port support"
1031         depends on ARCH_VT8500
1032         select SERIAL_CORE
1033
1034 config SERIAL_VT8500_CONSOLE
1035         bool "VIA VT8500 serial console support"
1036         depends on SERIAL_VT8500=y
1037         select SERIAL_CORE_CONSOLE
1038
1039 config SERIAL_OMAP
1040         tristate "OMAP serial port support"
1041         depends on ARCH_OMAP2PLUS
1042         select SERIAL_CORE
1043         help
1044           If you have a machine based on an Texas Instruments OMAP CPU you
1045           can enable its onboard serial ports by enabling this option.
1046
1047           By enabling this option you take advantage of dma feature available
1048           with the omap-serial driver. DMA support can be enabled from platform
1049           data.
1050
1051 config SERIAL_OMAP_CONSOLE
1052         bool "Console on OMAP serial port"
1053         depends on SERIAL_OMAP=y
1054         select SERIAL_CORE_CONSOLE
1055         help
1056           Select this option if you would like to use omap serial port as
1057           console.
1058
1059           Even if you say Y here, the currently visible virtual console
1060           (/dev/tty0) will still be used as the system console by default, but
1061           you can alter that using a kernel command line option such as
1062           "console=ttyOx". (Try "man bootparam" or see the documentation of
1063           your boot loader about how to pass options to the kernel at
1064           boot time.)
1065
1066 config SERIAL_SIFIVE
1067         tristate "SiFive UART support"
1068         depends on OF
1069         select SERIAL_CORE
1070         help
1071           Select this option if you are building a kernel for a device that
1072           contains a SiFive UART IP block.  This type of UART is present on
1073           SiFive FU540 SoCs, among others.
1074
1075 config SERIAL_SIFIVE_CONSOLE
1076         bool "Console on SiFive UART"
1077         depends on SERIAL_SIFIVE=y
1078         select SERIAL_CORE_CONSOLE
1079         help
1080           Select this option if you would like to use a SiFive UART as the
1081           system console.
1082
1083           Even if you say Y here, the currently visible virtual console
1084           (/dev/tty0) will still be used as the system console by default, but
1085           you can alter that using a kernel command line option such as
1086           "console=ttySIFx". (Try "man bootparam" or see the documentation of
1087           your boot loader about how to pass options to the kernel at
1088           boot time.)
1089
1090 config SERIAL_LANTIQ
1091         bool "Lantiq serial driver"
1092         depends on LANTIQ
1093         select SERIAL_CORE
1094         select SERIAL_CORE_CONSOLE
1095         select SERIAL_EARLYCON
1096         help
1097           Support for console and UART on Lantiq SoCs.
1098
1099 config SERIAL_QE
1100         tristate "Freescale QUICC Engine serial port support"
1101         depends on QUICC_ENGINE
1102         select SERIAL_CORE
1103         select FW_LOADER
1104         help
1105           This driver supports the QE serial ports on Freescale embedded
1106           PowerPC that contain a QUICC Engine.
1107
1108 config SERIAL_SCCNXP
1109         tristate "SCCNXP serial port support"
1110         select SERIAL_CORE
1111         help
1112           This selects support for an advanced UART from NXP (Philips).
1113           Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1114           SC28L202, SCC68681 and SCC68692.
1115
1116 config SERIAL_SCCNXP_CONSOLE
1117         bool "Console on SCCNXP serial port"
1118         depends on SERIAL_SCCNXP=y
1119         select SERIAL_CORE_CONSOLE
1120         help
1121           Support for console on SCCNXP serial ports.
1122
1123 config SERIAL_SC16IS7XX_CORE
1124         tristate
1125
1126 config SERIAL_SC16IS7XX
1127         tristate "SC16IS7xx serial support"
1128         select SERIAL_CORE
1129         depends on (SPI_MASTER && !I2C) || I2C
1130         help
1131           This selects support for SC16IS7xx serial ports.
1132           Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1133           SC16IS760 and SC16IS762. Select supported buses using options below.
1134
1135 config SERIAL_SC16IS7XX_I2C
1136         bool "SC16IS7xx for I2C interface"
1137         depends on SERIAL_SC16IS7XX
1138         depends on I2C
1139         select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1140         select REGMAP_I2C if I2C
1141         default y
1142         help
1143           Enable SC16IS7xx driver on I2C bus,
1144           If required say y, and say n to i2c if not required,
1145           Enabled by default to support oldconfig.
1146           You must select at least one bus for the driver to be built.
1147
1148 config SERIAL_SC16IS7XX_SPI
1149         bool "SC16IS7xx for spi interface"
1150         depends on SERIAL_SC16IS7XX
1151         depends on SPI_MASTER
1152         select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1153         select REGMAP_SPI if SPI_MASTER
1154         help
1155           Enable SC16IS7xx driver on SPI bus,
1156           If required say y, and say n to spi if not required,
1157           This is additional support to exsisting driver.
1158           You must select at least one bus for the driver to be built.
1159
1160 config SERIAL_TIMBERDALE
1161         tristate "Support for timberdale UART"
1162         select SERIAL_CORE
1163         depends on X86_32 || COMPILE_TEST
1164         ---help---
1165         Add support for UART controller on timberdale.
1166
1167 config SERIAL_BCM63XX
1168         tristate "Broadcom BCM63xx/BCM33xx UART support"
1169         select SERIAL_CORE
1170         depends on MIPS || ARM || COMPILE_TEST
1171         help
1172           This enables the driver for the onchip UART core found on
1173           the following chipsets:
1174
1175             BCM33xx (cable modem)
1176             BCM63xx/BCM63xxx (DSL)
1177             BCM68xx (PON)
1178             BCM7xxx (STB) - DOCSIS console
1179
1180 config SERIAL_BCM63XX_CONSOLE
1181         bool "Console on BCM63xx serial port"
1182         depends on SERIAL_BCM63XX=y
1183         select SERIAL_CORE_CONSOLE
1184         select SERIAL_EARLYCON
1185         help
1186           If you have enabled the serial port on the BCM63xx CPU
1187           you can make it the console by answering Y to this option.
1188
1189 config SERIAL_GRLIB_GAISLER_APBUART
1190         tristate "GRLIB APBUART serial support"
1191         depends on OF && SPARC
1192         select SERIAL_CORE
1193         ---help---
1194         Add support for the GRLIB APBUART serial port.
1195
1196 config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1197         bool "Console on GRLIB APBUART serial port"
1198         depends on SERIAL_GRLIB_GAISLER_APBUART=y
1199         select SERIAL_CORE_CONSOLE
1200         help
1201         Support for running a console on the GRLIB APBUART
1202
1203 config SERIAL_ALTERA_JTAGUART
1204         tristate "Altera JTAG UART support"
1205         select SERIAL_CORE
1206         help
1207           This driver supports the Altera JTAG UART port.
1208
1209 config SERIAL_ALTERA_JTAGUART_CONSOLE
1210         bool "Altera JTAG UART console support"
1211         depends on SERIAL_ALTERA_JTAGUART=y
1212         select SERIAL_CORE_CONSOLE
1213         select SERIAL_EARLYCON
1214         help
1215           Enable a Altera JTAG UART port to be the system console.
1216
1217 config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1218         bool "Bypass output when no connection"
1219         depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1220         select SERIAL_CORE_CONSOLE
1221         help
1222           Bypass console output and keep going even if there is no
1223           JTAG terminal connection with the host.
1224
1225 config SERIAL_ALTERA_UART
1226         tristate "Altera UART support"
1227         select SERIAL_CORE
1228         help
1229           This driver supports the Altera softcore UART port.
1230
1231 config SERIAL_ALTERA_UART_MAXPORTS
1232         int "Maximum number of Altera UART ports"
1233         depends on SERIAL_ALTERA_UART
1234         default 4
1235         help
1236           This setting lets you define the maximum number of the Altera
1237           UART ports. The usual default varies from board to board, and
1238           this setting is a way of catering for that.
1239
1240 config SERIAL_ALTERA_UART_BAUDRATE
1241         int "Default baudrate for Altera UART ports"
1242         depends on SERIAL_ALTERA_UART
1243         default 115200
1244         help
1245           This setting lets you define what the default baudrate is for the
1246           Altera UART ports. The usual default varies from board to board,
1247           and this setting is a way of catering for that.
1248
1249 config SERIAL_ALTERA_UART_CONSOLE
1250         bool "Altera UART console support"
1251         depends on SERIAL_ALTERA_UART=y
1252         select SERIAL_CORE_CONSOLE
1253         select SERIAL_EARLYCON
1254         help
1255           Enable a Altera UART port to be the system console.
1256
1257 config SERIAL_IFX6X60
1258         tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)"
1259         depends on GPIOLIB || COMPILE_TEST
1260         depends on SPI && HAS_DMA
1261         help
1262           Support for the IFX6x60 modem devices on Intel MID platforms.
1263
1264 config SERIAL_PCH_UART
1265         tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1266         depends on PCI && (X86_32 || MIPS ||  COMPILE_TEST)
1267         select SERIAL_CORE
1268         help
1269           This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1270           which is an IOH(Input/Output Hub) for x86 embedded processor.
1271           Enabling PCH_DMA, this PCH UART works as DMA mode.
1272
1273           This driver also can be used for LAPIS Semiconductor IOH(Input/
1274           Output Hub), ML7213, ML7223 and ML7831.
1275           ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1276           for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1277           ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1278           ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1279
1280 config SERIAL_PCH_UART_CONSOLE
1281         bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1282         depends on SERIAL_PCH_UART=y
1283         select SERIAL_CORE_CONSOLE
1284         help
1285           Say Y here if you wish to use the PCH UART as the system console
1286           (the system  console is the device which receives all kernel messages and
1287           warnings and which allows logins in single user mode).
1288
1289 config SERIAL_MXS_AUART
1290         tristate "MXS AUART support"
1291         depends on ARCH_MXS || MACH_ASM9260 || COMPILE_TEST
1292         select SERIAL_CORE
1293         select SERIAL_MCTRL_GPIO if GPIOLIB
1294         help
1295           This driver supports the MXS and Alphascale ASM9260 Application
1296           UART (AUART) port.
1297
1298 config SERIAL_MXS_AUART_CONSOLE
1299         bool "MXS AUART console support"
1300         depends on SERIAL_MXS_AUART=y
1301         select SERIAL_CORE_CONSOLE
1302         help
1303           Enable a MXS AUART port to be the system console.
1304
1305 config SERIAL_XILINX_PS_UART
1306         tristate "Cadence (Xilinx Zynq) UART support"
1307         depends on OF
1308         select SERIAL_CORE
1309         help
1310           This driver supports the Cadence UART. It is found e.g. in Xilinx
1311           Zynq.
1312
1313 config SERIAL_XILINX_PS_UART_CONSOLE
1314         bool "Cadence UART console support"
1315         depends on SERIAL_XILINX_PS_UART=y
1316         select SERIAL_CORE_CONSOLE
1317         select SERIAL_EARLYCON
1318         help
1319           Enable a Cadence UART port to be the system console.
1320
1321 config SERIAL_AR933X
1322         tristate "AR933X serial port support"
1323         depends on HAVE_CLK && ATH79
1324         select SERIAL_CORE
1325         help
1326           If you have an Atheros AR933X SOC based board and want to use the
1327           built-in UART of the SoC, say Y to this option.
1328
1329           To compile this driver as a module, choose M here: the
1330           module will be called ar933x_uart.
1331
1332 config SERIAL_AR933X_CONSOLE
1333         bool "Console on AR933X serial port"
1334         depends on SERIAL_AR933X=y
1335         select SERIAL_CORE_CONSOLE
1336         help
1337           Enable a built-in UART port of the AR933X to be the system console.
1338
1339 config SERIAL_AR933X_NR_UARTS
1340         int "Maximum number of AR933X serial ports"
1341         depends on SERIAL_AR933X
1342         default "2"
1343         help
1344           Set this to the number of serial ports you want the driver
1345           to support.
1346
1347 config SERIAL_EFM32_UART
1348         tristate "EFM32 UART/USART port"
1349         depends on ARM && (ARCH_EFM32 || COMPILE_TEST)
1350         select SERIAL_CORE
1351         help
1352           This driver support the USART and UART ports on
1353           Energy Micro's efm32 SoCs.
1354
1355 config SERIAL_MPS2_UART_CONSOLE
1356         bool "MPS2 UART console support"
1357         depends on SERIAL_MPS2_UART
1358         select SERIAL_CORE_CONSOLE
1359         select SERIAL_EARLYCON
1360
1361 config SERIAL_MPS2_UART
1362         bool "MPS2 UART port"
1363         depends on ARCH_MPS2 || COMPILE_TEST
1364         select SERIAL_CORE
1365         help
1366           This driver support the UART ports on ARM MPS2.
1367
1368 config SERIAL_EFM32_UART_CONSOLE
1369         bool "EFM32 UART/USART console support"
1370         depends on SERIAL_EFM32_UART=y
1371         select SERIAL_CORE_CONSOLE
1372
1373 config SERIAL_ARC
1374         tristate "ARC UART driver support"
1375         select SERIAL_CORE
1376         help
1377           Driver for on-chip UART for ARC(Synopsys) for the legacy
1378           FPGA Boards (ML50x/ARCAngel4)
1379
1380 config SERIAL_ARC_CONSOLE
1381         bool "Console on ARC UART"
1382         depends on SERIAL_ARC=y
1383         select SERIAL_CORE_CONSOLE
1384         select SERIAL_EARLYCON
1385         help
1386           Enable system Console on ARC UART
1387
1388 config SERIAL_ARC_NR_PORTS
1389         int "Number of ARC UART ports"
1390         depends on SERIAL_ARC
1391         range 1 3
1392         default "1"
1393         help
1394           Set this to the number of serial ports you want the driver
1395           to support.
1396
1397 config SERIAL_RP2
1398         tristate "Comtrol RocketPort EXPRESS/INFINITY support"
1399         depends on PCI
1400         select SERIAL_CORE
1401         help
1402           This driver supports the Comtrol RocketPort EXPRESS and
1403           RocketPort INFINITY families of PCI/PCIe multiport serial adapters.
1404           These adapters use a "RocketPort 2" ASIC that is not compatible
1405           with the original RocketPort driver (CONFIG_ROCKETPORT).
1406
1407           To compile this driver as a module, choose M here: the
1408           module will be called rp2.
1409
1410           If you want to compile this driver into the kernel, say Y here.  If
1411           you don't have a suitable RocketPort card installed, say N.
1412
1413 config SERIAL_RP2_NR_UARTS
1414         int "Maximum number of RocketPort EXPRESS/INFINITY ports"
1415         depends on SERIAL_RP2
1416         default "32"
1417         help
1418           If multiple cards are present, the default limit of 32 ports may
1419           need to be increased.
1420
1421 config SERIAL_FSL_LPUART
1422         tristate "Freescale lpuart serial port support"
1423         depends on HAS_DMA
1424         select SERIAL_CORE
1425         help
1426           Support for the on-chip lpuart on some Freescale SOCs.
1427
1428 config SERIAL_FSL_LPUART_CONSOLE
1429         bool "Console on Freescale lpuart serial port"
1430         depends on SERIAL_FSL_LPUART=y
1431         select SERIAL_CORE_CONSOLE
1432         select SERIAL_EARLYCON
1433         help
1434           If you have enabled the lpuart serial port on the Freescale SoCs,
1435           you can make it the console by answering Y to this option.
1436
1437 config SERIAL_CONEXANT_DIGICOLOR
1438         tristate "Conexant Digicolor CX92xxx USART serial port support"
1439         depends on OF
1440         select SERIAL_CORE
1441         help
1442           Support for the on-chip USART on Conexant Digicolor SoCs.
1443
1444 config SERIAL_CONEXANT_DIGICOLOR_CONSOLE
1445         bool "Console on Conexant Digicolor serial port"
1446         depends on SERIAL_CONEXANT_DIGICOLOR=y
1447         select SERIAL_CORE_CONSOLE
1448         help
1449           If you have enabled the USART serial port on Conexant Digicolor
1450           SoCs, you can make it the console by answering Y to this option.
1451
1452 config SERIAL_ST_ASC
1453         tristate "ST ASC serial port support"
1454         select SERIAL_CORE
1455         depends on ARM || COMPILE_TEST
1456         help
1457           This driver is for the on-chip Asychronous Serial Controller on
1458           STMicroelectronics STi SoCs.
1459           ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality.
1460           It support all industry standard baud rates.
1461
1462           If unsure, say N.
1463
1464 config SERIAL_ST_ASC_CONSOLE
1465         bool "Support for console on ST ASC"
1466         depends on SERIAL_ST_ASC=y
1467         select SERIAL_CORE_CONSOLE
1468
1469 config SERIAL_MEN_Z135
1470         tristate "MEN 16z135 Support"
1471         select SERIAL_CORE
1472         depends on MCB
1473         help
1474           Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core
1475           on a MCB carrier.
1476
1477           This driver can also be build as a module. If so, the module will be called
1478           men_z135_uart.ko
1479
1480 config SERIAL_SPRD
1481         tristate "Support for Spreadtrum serial"
1482         depends on ARCH_SPRD
1483         select SERIAL_CORE
1484         help
1485           This enables the driver for the Spreadtrum's serial.
1486
1487 config SERIAL_SPRD_CONSOLE
1488         bool "Spreadtrum UART console support"
1489         depends on SERIAL_SPRD=y
1490         select SERIAL_CORE_CONSOLE
1491         select SERIAL_EARLYCON
1492         help
1493           Support for early debug console using Spreadtrum's serial. This enables
1494           the console before standard serial driver is probed. This is enabled
1495           with "earlycon" on the kernel command line. The console is
1496           enabled when early_param is processed.
1497
1498 config SERIAL_STM32
1499         tristate "STMicroelectronics STM32 serial port support"
1500         select SERIAL_CORE
1501         depends on ARCH_STM32 || COMPILE_TEST
1502         help
1503           This driver is for the on-chip Serial Controller on
1504           STMicroelectronics STM32 MCUs.
1505           USART supports Rx & Tx functionality.
1506           It support all industry standard baud rates.
1507
1508           If unsure, say N.
1509
1510 config SERIAL_STM32_CONSOLE
1511         bool "Support for console on STM32"
1512         depends on SERIAL_STM32=y
1513         select SERIAL_CORE_CONSOLE
1514
1515 config SERIAL_MVEBU_UART
1516         bool "Marvell EBU serial port support"
1517         depends on ARCH_MVEBU || COMPILE_TEST
1518         select SERIAL_CORE
1519         help
1520           This driver is for Marvell EBU SoC's UART. If you have a machine
1521           based on the Armada-3700 SoC and wish to use the on-board serial
1522           port,
1523           say 'Y' here.
1524           Otherwise, say 'N'.
1525
1526 config SERIAL_MVEBU_CONSOLE
1527         bool "Console on Marvell EBU serial port"
1528         depends on SERIAL_MVEBU_UART
1529         select SERIAL_CORE_CONSOLE
1530         select SERIAL_EARLYCON
1531         default y
1532         help
1533           Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1534           (the system console is the device which receives all kernel messages
1535           and warnings and which allows logins in single user mode)
1536           Otherwise, say 'N'.
1537
1538 config SERIAL_OWL
1539         tristate "Actions Semi Owl serial port support"
1540         depends on ARCH_ACTIONS || COMPILE_TEST
1541         select SERIAL_CORE
1542         help
1543           This driver is for Actions Semiconductor S500/S900 SoC's UART.
1544           Say 'Y' here if you wish to use the on-board serial port.
1545           Otherwise, say 'N'.
1546
1547 config SERIAL_OWL_CONSOLE
1548         bool "Console on Actions Semi Owl serial port"
1549         depends on SERIAL_OWL=y
1550         select SERIAL_CORE_CONSOLE
1551         select SERIAL_EARLYCON
1552         default y
1553         help
1554           Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART
1555           as the system console.
1556
1557 config SERIAL_RDA
1558         bool "RDA Micro serial port support"
1559         depends on ARCH_RDA || COMPILE_TEST
1560         select SERIAL_CORE
1561         help
1562           This driver is for RDA8810PL SoC's UART.
1563           Say 'Y' here if you wish to use the on-board serial port.
1564           Otherwise, say 'N'.
1565
1566 config SERIAL_RDA_CONSOLE
1567         bool "Console on RDA Micro serial port"
1568         depends on SERIAL_RDA=y
1569         select SERIAL_CORE_CONSOLE
1570         select SERIAL_EARLYCON
1571         default y
1572         help
1573           Say 'Y' here if you wish to use the RDA8810PL UART as the system
1574           console. Only earlycon is implemented currently.
1575
1576 config SERIAL_MILBEAUT_USIO
1577         tristate "Milbeaut USIO/UART serial port support"
1578         depends on ARCH_MILBEAUT || (COMPILE_TEST && OF)
1579         default ARCH_MILBEAUT
1580         select SERIAL_CORE
1581         help
1582           This selects the USIO/UART IP found in Socionext Milbeaut SoCs.
1583
1584 config SERIAL_MILBEAUT_USIO_PORTS
1585         int "Maximum number of CSIO/UART ports (1-8)"
1586         range 1 8
1587         depends on SERIAL_MILBEAUT_USIO
1588         default "4"
1589
1590 config SERIAL_MILBEAUT_USIO_CONSOLE
1591         bool "Support for console on MILBEAUT USIO/UART serial port"
1592         depends on SERIAL_MILBEAUT_USIO=y
1593         default y
1594         select SERIAL_CORE_CONSOLE
1595         select SERIAL_EARLYCON
1596         help
1597           Say 'Y' here if you wish to use a USIO/UART of Socionext Milbeaut
1598           SoCs as the system console (the system console is the device which
1599           receives all kernel messages and warnings and which allows logins in
1600           single user mode).
1601
1602 endmenu
1603
1604 config SERIAL_MCTRL_GPIO
1605         tristate
1606
1607 endif # TTY