OSDN Git Service

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