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