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