xref: /openbmc/linux/drivers/tty/serial/Kconfig (revision 110e6f26)
1#
2# Serial device configuration
3#
4
5if TTY
6
7menu "Serial drivers"
8	depends on HAS_IOMEM
9
10config 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
17source "drivers/tty/serial/8250/Kconfig"
18
19comment "Non-8250 serial port support"
20
21config 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
32config 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
48config 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
59config 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
76config 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
88config 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
103config 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
116config SERIAL_ATMEL
117	bool "AT91 / AT32 on-chip serial port support"
118	depends on HAS_DMA
119	depends on ARCH_AT91 || AVR32 || COMPILE_TEST
120	select SERIAL_CORE
121	select SERIAL_MCTRL_GPIO if GPIOLIB
122	help
123	  This enables the driver for the on-chip UARTs of the Atmel
124	  AT91 and AT32 processors.
125
126config SERIAL_ATMEL_CONSOLE
127	bool "Support for console on AT91 / AT32 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 or AT32 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
136config SERIAL_ATMEL_PDC
137	bool "Support DMA transfers on AT91 / AT32 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 / AT32 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
151config 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 / AT32 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
168config 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
187config 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
194config 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
204config 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
212config SERIAL_MESON_CONSOLE
213	bool "Support for console on meson"
214	depends on SERIAL_MESON=y
215	select SERIAL_CORE_CONSOLE
216	help
217	  Say Y here if you wish to use a Amlogic MesonX UART as the
218	  system console (the system console is the device which
219	  receives all kernel messages and warnings and which allows
220	  logins in single user mode) as /dev/ttyAMLx.
221
222config SERIAL_CLPS711X
223	tristate "CLPS711X serial port support"
224	depends on ARCH_CLPS711X || COMPILE_TEST
225	select SERIAL_CORE
226	select SERIAL_MCTRL_GPIO if GPIOLIB
227	help
228	  This enables the driver for the on-chip UARTs of the Cirrus
229	  Logic EP711x/EP721x/EP731x processors.
230
231config SERIAL_CLPS711X_CONSOLE
232	bool "Support for console on CLPS711X serial port"
233	depends on SERIAL_CLPS711X=y
234	select SERIAL_CORE_CONSOLE
235	help
236	  Even if you say Y here, the currently visible virtual console
237	  (/dev/tty0) will still be used as the system console by default, but
238	  you can alter that using a kernel command line option such as
239	  "console=ttyCL1".
240
241config SERIAL_SAMSUNG
242	tristate "Samsung SoC serial support"
243	depends on PLAT_SAMSUNG || ARCH_EXYNOS
244	select SERIAL_CORE
245	help
246	  Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
247	  providing /dev/ttySAC0, 1 and 2 (note, some machines may not
248	  provide all of these ports, depending on how the serial port
249	  pins are configured.
250
251config SERIAL_SAMSUNG_UARTS_4
252	bool
253	depends on SERIAL_SAMSUNG
254	default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
255	help
256	  Internal node for the common case of 4 Samsung compatible UARTs
257
258config SERIAL_SAMSUNG_UARTS
259	int
260	depends on SERIAL_SAMSUNG
261	default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
262	default 3
263	help
264	  Select the number of available UART ports for the Samsung S3C
265	  serial driver
266
267config SERIAL_SAMSUNG_DEBUG
268	bool "Samsung SoC serial debug"
269	depends on SERIAL_SAMSUNG && DEBUG_LL
270	help
271	  Add support for debugging the serial driver. Since this is
272	  generally being used as a console, we use our own output
273	  routines that go via the low-level debug printascii()
274	  function.
275
276config SERIAL_SAMSUNG_CONSOLE
277	bool "Support for console on Samsung SoC serial port"
278	depends on SERIAL_SAMSUNG=y
279	select SERIAL_CORE_CONSOLE
280	select SERIAL_EARLYCON
281	help
282	  Allow selection of the S3C24XX on-board serial ports for use as
283	  an virtual console.
284
285	  Even if you say Y here, the currently visible virtual console
286	  (/dev/tty0) will still be used as the system console by default, but
287	  you can alter that using a kernel command line option such as
288	  "console=ttySACx". (Try "man bootparam" or see the documentation of
289	  your boot loader about how to pass options to the kernel at
290	  boot time.)
291
292config SERIAL_SIRFSOC
293        tristate "SiRF SoC Platform Serial port support"
294        depends on ARCH_SIRF
295        select SERIAL_CORE
296        help
297          Support for the on-chip UART on the CSR SiRFprimaII series,
298          providing /dev/ttySiRF0, 1 and 2 (note, some machines may not
299          provide all of these ports, depending on how the serial port
300          pins are configured).
301
302config SERIAL_SIRFSOC_CONSOLE
303        bool "Support for console on SiRF SoC serial port"
304        depends on SERIAL_SIRFSOC=y
305        select SERIAL_CORE_CONSOLE
306        help
307          Even if you say Y here, the currently visible virtual console
308          (/dev/tty0) will still be used as the system console by default, but
309          you can alter that using a kernel command line option such as
310          "console=ttySiRFx". (Try "man bootparam" or see the documentation of
311          your boot loader about how to pass options to the kernel at
312          boot time.)
313
314config SERIAL_TEGRA
315	tristate "NVIDIA Tegra20/30 SoC serial controller"
316	depends on ARCH_TEGRA && TEGRA20_APB_DMA
317	select SERIAL_CORE
318	help
319	  Support for the on-chip UARTs on the NVIDIA Tegra series SOCs
320	  providing /dev/ttyTHS0, 1, 2, 3 and 4 (note, some machines may not
321	  provide all of these ports, depending on how the serial port
322	  are enabled). This driver uses the APB DMA to achieve higher baudrate
323	  and better performance.
324
325config SERIAL_MAX3100
326	tristate "MAX3100 support"
327	depends on SPI
328	select SERIAL_CORE
329	help
330	  MAX3100 chip support
331
332config SERIAL_MAX310X
333	tristate "MAX310X support"
334	depends on SPI_MASTER
335	select SERIAL_CORE
336	select REGMAP_SPI if SPI_MASTER
337	default n
338	help
339	  This selects support for an advanced UART from Maxim (Dallas).
340	  Supported ICs are MAX3107, MAX3108, MAX3109, MAX14830.
341	  Each IC contains 128 words each of receive and transmit FIFO
342	  that can be controlled through I2C or high-speed SPI.
343
344	  Say Y here if you want to support this ICs.
345
346config SERIAL_DZ
347	bool "DECstation DZ serial driver"
348	depends on MACH_DECSTATION && 32BIT
349	select SERIAL_CORE
350	default y
351	---help---
352	  DZ11-family serial controllers for DECstations and VAXstations,
353	  including the DC7085, M7814, and M7819.
354
355config SERIAL_DZ_CONSOLE
356	bool "Support console on DECstation DZ serial driver"
357	depends on SERIAL_DZ=y
358	select SERIAL_CORE_CONSOLE
359	default y
360	---help---
361	  If you say Y here, it will be possible to use a serial port as the
362	  system console (the system console is the device which receives all
363	  kernel messages and warnings and which allows logins in single user
364	  mode).
365
366	  Note that the firmware uses ttyS3 as the serial console on
367	  DECstations that use this driver.
368
369	  If unsure, say Y.
370
371config SERIAL_ZS
372	tristate "DECstation Z85C30 serial support"
373	depends on MACH_DECSTATION
374	select SERIAL_CORE
375	default y
376	---help---
377	  Support for the Zilog 85C350 serial communications controller used
378	  for serial ports in newer DECstation systems.  These include the
379	  DECsystem 5900 and all models of the DECstation and DECsystem 5000
380	  systems except from model 200.
381
382	  If unsure, say Y.  To compile this driver as a module, choose M here:
383	  the module will be called zs.
384
385config SERIAL_ZS_CONSOLE
386	bool "Support for console on a DECstation Z85C30 serial port"
387	depends on SERIAL_ZS=y
388	select SERIAL_CORE_CONSOLE
389	default y
390	---help---
391	  If you say Y here, it will be possible to use a serial port as the
392	  system console (the system console is the device which receives all
393	  kernel messages and warnings and which allows logins in single user
394	  mode).
395
396	  Note that the firmware uses ttyS1 as the serial console on the
397	  Maxine and ttyS3 on the others using this driver.
398
399	  If unsure, say Y.
400
401config SERIAL_21285
402	tristate "DC21285 serial port support"
403	depends on FOOTBRIDGE
404	select SERIAL_CORE
405	help
406	  If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
407	  PCI bridge you can enable its onboard serial port by enabling this
408	  option.
409
410config SERIAL_21285_CONSOLE
411	bool "Console on DC21285 serial port"
412	depends on SERIAL_21285=y
413	select SERIAL_CORE_CONSOLE
414	help
415	  If you have enabled the serial port on the 21285 footbridge you can
416	  make it the console by answering Y to this option.
417
418	  Even if you say Y here, the currently visible virtual console
419	  (/dev/tty0) will still be used as the system console by default, but
420	  you can alter that using a kernel command line option such as
421	  "console=ttyFB". (Try "man bootparam" or see the documentation of
422	  your boot loader (lilo or loadlin) about how to pass options to the
423	  kernel at boot time.)
424
425config SERIAL_MPSC
426	bool "Marvell MPSC serial port support"
427	depends on MV64X60
428	select SERIAL_CORE
429	help
430	  Say Y here if you want to use the Marvell MPSC serial controller.
431
432config SERIAL_MPSC_CONSOLE
433	bool "Support for console on Marvell MPSC serial port"
434	depends on SERIAL_MPSC
435	select SERIAL_CORE_CONSOLE
436	help
437	  Say Y here if you want to support a serial console on a Marvell MPSC.
438
439config SERIAL_PXA
440	bool "PXA serial port support"
441	depends on ARCH_PXA || ARCH_MMP
442	select SERIAL_CORE
443	help
444	  If you have a machine based on an Intel XScale PXA2xx CPU you
445	  can enable its onboard serial ports by enabling this option.
446
447config SERIAL_PXA_CONSOLE
448	bool "Console on PXA serial port"
449	depends on SERIAL_PXA
450	select SERIAL_CORE_CONSOLE
451	help
452	  If you have enabled the serial port on the Intel XScale PXA
453	  CPU you can make it the console by answering Y to this option.
454
455	  Even if you say Y here, the currently visible virtual console
456	  (/dev/tty0) will still be used as the system console by default, but
457	  you can alter that using a kernel command line option such as
458	  "console=ttySA0". (Try "man bootparam" or see the documentation of
459	  your boot loader (lilo or loadlin) about how to pass options to the
460	  kernel at boot time.)
461
462config SERIAL_SA1100
463	bool "SA1100 serial port support"
464	depends on ARCH_SA1100
465	select SERIAL_CORE
466	help
467	  If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
468	  can enable its onboard serial port by enabling this option.
469	  Please read <file:Documentation/arm/SA1100/serial_UART> for further
470	  info.
471
472config SERIAL_SA1100_CONSOLE
473	bool "Console on SA1100 serial port"
474	depends on SERIAL_SA1100
475	select SERIAL_CORE_CONSOLE
476	help
477	  If you have enabled the serial port on the SA1100/SA1110 StrongARM
478	  CPU you can make it the console by answering Y to this option.
479
480	  Even if you say Y here, the currently visible virtual console
481	  (/dev/tty0) will still be used as the system console by default, but
482	  you can alter that using a kernel command line option such as
483	  "console=ttySA0". (Try "man bootparam" or see the documentation of
484	  your boot loader (lilo or loadlin) about how to pass options to the
485	  kernel at boot time.)
486
487config SERIAL_BFIN
488	tristate "Blackfin serial port support"
489	depends on BLACKFIN
490	select SERIAL_CORE
491	select SERIAL_BFIN_UART0 if (BF531 || BF532 || BF533 || BF561)
492	help
493	  Add support for the built-in UARTs on the Blackfin.
494
495	  To compile this driver as a module, choose M here: the
496	  module is named bfin_uart.ko.
497
498config SERIAL_BFIN_CONSOLE
499	bool "Console on Blackfin serial port"
500	depends on SERIAL_BFIN=y
501	select SERIAL_CORE_CONSOLE
502
503choice
504	prompt "UART Mode"
505	depends on SERIAL_BFIN
506	default SERIAL_BFIN_DMA
507	help
508	  This driver supports the built-in serial ports of the Blackfin family
509	  of CPUs
510
511config SERIAL_BFIN_DMA
512	bool "DMA mode"
513	depends on !DMA_UNCACHED_NONE && KGDB_SERIAL_CONSOLE=n
514	help
515	  This driver works under DMA mode. If this option is selected, the
516	  blackfin simple dma driver is also enabled.
517
518config SERIAL_BFIN_PIO
519	bool "PIO mode"
520	help
521	  This driver works under PIO mode.
522
523endchoice
524
525config SERIAL_BFIN_UART0
526	bool "Enable UART0"
527	depends on SERIAL_BFIN
528	help
529	  Enable UART0
530
531config BFIN_UART0_CTSRTS
532	bool "Enable UART0 hardware flow control"
533	depends on SERIAL_BFIN_UART0
534	help
535	  Enable hardware flow control in the driver.
536
537config SERIAL_BFIN_UART1
538	bool "Enable UART1"
539	depends on SERIAL_BFIN && (!BF531 && !BF532 && !BF533 && !BF561)
540	help
541	  Enable UART1
542
543config BFIN_UART1_CTSRTS
544	bool "Enable UART1 hardware flow control"
545	depends on SERIAL_BFIN_UART1
546	help
547	  Enable hardware flow control in the driver.
548
549config SERIAL_BFIN_UART2
550	bool "Enable UART2"
551	depends on SERIAL_BFIN && (BF54x || BF538 || BF539)
552	help
553	  Enable UART2
554
555config BFIN_UART2_CTSRTS
556	bool "Enable UART2 hardware flow control"
557	depends on SERIAL_BFIN_UART2
558	help
559	  Enable hardware flow control in the driver.
560
561config SERIAL_BFIN_UART3
562	bool "Enable UART3"
563	depends on SERIAL_BFIN && (BF54x)
564	help
565	  Enable UART3
566
567config BFIN_UART3_CTSRTS
568	bool "Enable UART3 hardware flow control"
569	depends on SERIAL_BFIN_UART3
570	help
571	  Enable hardware flow control in the driver.
572
573config SERIAL_IMX
574	tristate "IMX serial port support"
575	depends on HAS_DMA
576	depends on ARCH_MXC || COMPILE_TEST
577	select SERIAL_CORE
578	select RATIONAL
579	select SERIAL_MCTRL_GPIO if GPIOLIB
580	help
581	  If you have a machine based on a Motorola IMX CPU you
582	  can enable its onboard serial port by enabling this option.
583
584config SERIAL_IMX_CONSOLE
585	bool "Console on IMX serial port"
586	depends on SERIAL_IMX=y
587	select SERIAL_CORE_CONSOLE
588	select SERIAL_EARLYCON if OF
589	help
590	  If you have enabled the serial port on the Freescale IMX
591	  CPU you can make it the console by answering Y to this option.
592
593	  Even if you say Y here, the currently visible virtual console
594	  (/dev/tty0) will still be used as the system console by default, but
595	  you can alter that using a kernel command line option such as
596	  "console=ttymxc0". (Try "man bootparam" or see the documentation of
597	  your bootloader about how to pass options to the kernel at boot time.)
598
599config SERIAL_UARTLITE
600	tristate "Xilinx uartlite serial port support"
601	depends on HAS_IOMEM
602	select SERIAL_CORE
603	help
604	  Say Y here if you want to use the Xilinx uartlite serial controller.
605
606	  To compile this driver as a module, choose M here: the
607	  module will be called uartlite.
608
609config SERIAL_UARTLITE_CONSOLE
610	bool "Support for console on Xilinx uartlite serial port"
611	depends on SERIAL_UARTLITE=y
612	select SERIAL_CORE_CONSOLE
613	select SERIAL_EARLYCON
614	help
615	  Say Y here if you wish to use a Xilinx uartlite as the system
616	  console (the system console is the device which receives all kernel
617	  messages and warnings and which allows logins in single user mode).
618
619config SERIAL_SUNCORE
620	bool
621	depends on SPARC
622	select SERIAL_CORE
623	select SERIAL_CORE_CONSOLE
624	default y
625
626config SERIAL_SUNZILOG
627	tristate "Sun Zilog8530 serial support"
628	depends on SPARC
629	help
630	  This driver supports the Zilog8530 serial ports found on many Sparc
631	  systems.  Say Y or M if you want to be able to these serial ports.
632
633config SERIAL_SUNZILOG_CONSOLE
634	bool "Console on Sun Zilog8530 serial port"
635	depends on SERIAL_SUNZILOG=y
636	help
637	  If you would like to be able to use the Zilog8530 serial port
638	  on your Sparc system as the console, you can do so by answering
639	  Y to this option.
640
641config SERIAL_SUNSU
642	tristate "Sun SU serial support"
643	depends on SPARC && PCI
644	help
645	  This driver supports the 8250 serial ports that run the keyboard and
646	  mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
647	  to these serial ports.
648
649config SERIAL_SUNSU_CONSOLE
650	bool "Console on Sun SU serial port"
651	depends on SERIAL_SUNSU=y
652	help
653	  If you would like to be able to use the SU serial port
654	  on your Sparc system as the console, you can do so by answering
655	  Y to this option.
656
657config SERIAL_MUX
658	tristate "Serial MUX support"
659	depends on GSC
660	select SERIAL_CORE
661	default y
662	---help---
663	  Saying Y here will enable the hardware MUX serial driver for
664	  the Nova, K class systems and D class with a 'remote control card'.
665	  The hardware MUX is not 8250/16550 compatible therefore the
666	  /dev/ttyB0 device is shared between the Serial MUX and the PDC
667	  software console. The following steps need to be completed to use
668	  the Serial MUX:
669
670	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
671	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
672	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
673		 root on this console.)
674	    4. Change the kernel command console parameter to: console=ttyB0
675
676config SERIAL_MUX_CONSOLE
677	bool "Support for console on serial MUX"
678	depends on SERIAL_MUX=y
679	select SERIAL_CORE_CONSOLE
680	default y
681
682config PDC_CONSOLE
683	bool "PDC software console support"
684	depends on PARISC && !SERIAL_MUX && VT
685	default n
686	help
687	  Saying Y here will enable the software based PDC console to be
688	  used as the system console.  This is useful for machines in
689	  which the hardware based console has not been written yet.  The
690	  following steps must be completed to use the PDC console:
691
692	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
693	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
694	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
695		 root on this console.)
696	    4. Change the kernel command console parameter to: console=ttyB0
697
698config SERIAL_SUNSAB
699	tristate "Sun Siemens SAB82532 serial support"
700	depends on SPARC && PCI
701	help
702	  This driver supports the Siemens SAB82532 DUSCC serial ports on newer
703	  (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
704	  serial ports.
705
706config SERIAL_SUNSAB_CONSOLE
707	bool "Console on Sun Siemens SAB82532 serial port"
708	depends on SERIAL_SUNSAB=y
709	help
710	  If you would like to be able to use the SAB82532 serial port
711	  on your Sparc system as the console, you can do so by answering
712	  Y to this option.
713
714config SERIAL_SUNHV
715	bool "Sun4v Hypervisor Console support"
716	depends on SPARC64
717	help
718	  This driver supports the console device found on SUN4V Sparc
719	  systems.  Say Y if you want to be able to use this device.
720
721config SERIAL_IP22_ZILOG
722	tristate "SGI Zilog8530 serial support"
723	depends on SGI_HAS_ZILOG
724	select SERIAL_CORE
725	help
726	  This driver supports the Zilog8530 serial ports found on SGI
727	  systems.  Say Y or M if you want to be able to these serial ports.
728
729config SERIAL_IP22_ZILOG_CONSOLE
730	bool "Console on SGI Zilog8530 serial port"
731	depends on SERIAL_IP22_ZILOG=y
732	select SERIAL_CORE_CONSOLE
733
734config SERIAL_SH_SCI
735	tristate "SuperH SCI(F) serial port support"
736	depends on SUPERH || ARCH_RENESAS || H8300 || COMPILE_TEST
737	select SERIAL_CORE
738
739config SERIAL_SH_SCI_NR_UARTS
740	int "Maximum number of SCI(F) serial ports"
741	depends on SERIAL_SH_SCI
742	default "2"
743
744config SERIAL_SH_SCI_CONSOLE
745	bool "Support for console on SuperH SCI(F)"
746	depends on SERIAL_SH_SCI=y
747	select SERIAL_CORE_CONSOLE
748
749config SERIAL_SH_SCI_EARLYCON
750	bool "Support for early console on SuperH SCI(F)"
751	depends on SERIAL_SH_SCI=y
752	select SERIAL_CORE_CONSOLE
753	select SERIAL_EARLYCON
754
755config SERIAL_SH_SCI_DMA
756	bool "DMA support"
757	depends on SERIAL_SH_SCI && DMA_ENGINE
758
759config SERIAL_PNX8XXX
760	bool "Enable PNX8XXX SoCs' UART Support"
761	depends on SOC_PNX833X
762	select SERIAL_CORE
763	help
764	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
765	  to use serial ports, say Y.  Otherwise, say N.
766
767config SERIAL_PNX8XXX_CONSOLE
768	bool "Enable PNX8XX0 serial console"
769	depends on SERIAL_PNX8XXX
770	select SERIAL_CORE_CONSOLE
771	help
772	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
773	  to use serial console, say Y. Otherwise, say N.
774
775config SERIAL_HS_LPC32XX
776	tristate "LPC32XX high speed serial port support"
777	depends on ARCH_LPC32XX && OF
778	select SERIAL_CORE
779	help
780	  Support for the LPC32XX high speed serial ports (up to 900kbps).
781	  Those are UARTs completely different from the Standard UARTs on the
782	  LPC32XX SoC.
783	  Choose M or Y here to build this driver.
784
785config SERIAL_HS_LPC32XX_CONSOLE
786	bool "Enable LPC32XX high speed UART serial console"
787	depends on SERIAL_HS_LPC32XX=y
788	select SERIAL_CORE_CONSOLE
789	help
790	  If you would like to be able to use one of the high speed serial
791	  ports on the LPC32XX as the console, you can do so by answering
792	  Y to this option.
793
794config SERIAL_CORE
795	tristate
796
797config SERIAL_CORE_CONSOLE
798	bool
799
800config CONSOLE_POLL
801	bool
802
803config 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
810config 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
819config 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
826config 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
835config 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
860config 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
869config 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
877config 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
893config 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
903config 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
913config 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
921config 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
930config 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
943config 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
951config 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
961config 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
972config SERIAL_TXX9
973	bool "TMPTX39XX/49XX SIO support"
974	depends on HAS_TXX9_SERIAL
975	select SERIAL_CORE
976	default y
977
978config HAS_TXX9_SERIAL
979	bool
980
981config SERIAL_TXX9_NR_UARTS
982	int "Maximum number of TMPTX39XX/49XX SIO ports"
983	depends on SERIAL_TXX9
984	default "6"
985
986config SERIAL_TXX9_CONSOLE
987	bool "TMPTX39XX/49XX SIO Console support"
988	depends on SERIAL_TXX9=y
989	select SERIAL_CORE_CONSOLE
990
991config SERIAL_TXX9_STDSERIAL
992	bool "TX39XX/49XX SIO act as standard serial"
993	depends on !SERIAL_8250 && SERIAL_TXX9
994
995config 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
1004config 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
1012config 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
1028config 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
1037config 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
1045config SERIAL_MSM
1046	tristate "MSM on-chip serial port support"
1047	depends on ARCH_QCOM
1048	select SERIAL_CORE
1049
1050config 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
1056config SERIAL_VT8500
1057	bool "VIA VT8500 on-chip serial port support"
1058	depends on ARCH_VT8500
1059	select SERIAL_CORE
1060
1061config SERIAL_VT8500_CONSOLE
1062	bool "VIA VT8500 serial console support"
1063	depends on SERIAL_VT8500=y
1064	select SERIAL_CORE_CONSOLE
1065
1066config 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
1072config SERIAL_ETRAXFS_CONSOLE
1073	bool "ETRAX FS serial console support"
1074	depends on SERIAL_ETRAXFS
1075	select SERIAL_CORE_CONSOLE
1076
1077config 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
1088config 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
1096config SERIAL_OMAP
1097	tristate "OMAP serial port support"
1098	depends on ARCH_OMAP2PLUS
1099	select SERIAL_CORE
1100	help
1101	  If you have a machine based on an Texas Instruments OMAP CPU you
1102	  can enable its onboard serial ports by enabling this option.
1103
1104	  By enabling this option you take advantage of dma feature available
1105	  with the omap-serial driver. DMA support can be enabled from platform
1106	  data.
1107
1108config SERIAL_OMAP_CONSOLE
1109	bool "Console on OMAP serial port"
1110	depends on SERIAL_OMAP=y
1111	select SERIAL_CORE_CONSOLE
1112	help
1113	  Select this option if you would like to use omap serial port as
1114	  console.
1115
1116	  Even if you say Y here, the currently visible virtual console
1117	  (/dev/tty0) will still be used as the system console by default, but
1118	  you can alter that using a kernel command line option such as
1119	  "console=ttyOx". (Try "man bootparam" or see the documentation of
1120	  your boot loader about how to pass options to the kernel at
1121	  boot time.)
1122
1123config SERIAL_LANTIQ
1124	bool "Lantiq serial driver"
1125	depends on LANTIQ
1126	select SERIAL_CORE
1127	select SERIAL_CORE_CONSOLE
1128	help
1129	  Support for console and UART on Lantiq SoCs.
1130
1131config SERIAL_QE
1132	tristate "Freescale QUICC Engine serial port support"
1133	depends on QUICC_ENGINE
1134	select SERIAL_CORE
1135	select FW_LOADER
1136	default n
1137	help
1138	  This driver supports the QE serial ports on Freescale embedded
1139	  PowerPC that contain a QUICC Engine.
1140
1141config SERIAL_SCCNXP
1142	tristate "SCCNXP serial port support"
1143	select SERIAL_CORE
1144	help
1145	  This selects support for an advanced UART from NXP (Philips).
1146	  Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1147	  SC28L202, SCC68681 and SCC68692.
1148
1149config SERIAL_SCCNXP_CONSOLE
1150	bool "Console on SCCNXP serial port"
1151	depends on SERIAL_SCCNXP=y
1152	select SERIAL_CORE_CONSOLE
1153	help
1154	  Support for console on SCCNXP serial ports.
1155
1156config SERIAL_SC16IS7XX_CORE
1157        tristate
1158
1159config SERIAL_SC16IS7XX
1160        tristate "SC16IS7xx serial support"
1161        select SERIAL_CORE
1162        depends on (SPI_MASTER && !I2C) || I2C
1163        help
1164          This selects support for SC16IS7xx serial ports.
1165          Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1166          SC16IS760 and SC16IS762. Select supported buses using options below.
1167
1168config SERIAL_SC16IS7XX_I2C
1169        bool "SC16IS7xx for I2C interface"
1170        depends on SERIAL_SC16IS7XX
1171        depends on I2C
1172        select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1173        select REGMAP_I2C if I2C
1174        default y
1175        help
1176          Enable SC16IS7xx driver on I2C bus,
1177          If required say y, and say n to i2c if not required,
1178          Enabled by default to support oldconfig.
1179          You must select at least one bus for the driver to be built.
1180
1181config SERIAL_SC16IS7XX_SPI
1182        bool "SC16IS7xx for spi interface"
1183        depends on SERIAL_SC16IS7XX
1184        depends on SPI_MASTER
1185        select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1186        select REGMAP_SPI if SPI_MASTER
1187        help
1188          Enable SC16IS7xx driver on SPI bus,
1189          If required say y, and say n to spi if not required,
1190          This is additional support to exsisting driver.
1191          You must select at least one bus for the driver to be built.
1192
1193config SERIAL_BFIN_SPORT
1194	tristate "Blackfin SPORT emulate UART"
1195	depends on BLACKFIN
1196	select SERIAL_CORE
1197	help
1198	  Enable SPORT emulate UART on Blackfin series.
1199
1200	  To compile this driver as a module, choose M here: the
1201	  module will be called bfin_sport_uart.
1202
1203config SERIAL_BFIN_SPORT_CONSOLE
1204	bool "Console on Blackfin sport emulated uart"
1205	depends on SERIAL_BFIN_SPORT=y
1206	select SERIAL_CORE_CONSOLE
1207
1208config SERIAL_BFIN_SPORT0_UART
1209	bool "Enable UART over SPORT0"
1210	depends on SERIAL_BFIN_SPORT && !(BF542 || BF544)
1211	help
1212	  Enable UART over SPORT0
1213
1214config SERIAL_BFIN_SPORT0_UART_CTSRTS
1215	bool "Enable UART over SPORT0 hardware flow control"
1216	depends on SERIAL_BFIN_SPORT0_UART
1217	help
1218	  Enable hardware flow control in the driver.
1219
1220config SERIAL_BFIN_SPORT1_UART
1221	bool "Enable UART over SPORT1"
1222	depends on SERIAL_BFIN_SPORT
1223	help
1224	  Enable UART over SPORT1
1225
1226config SERIAL_BFIN_SPORT1_UART_CTSRTS
1227	bool "Enable UART over SPORT1 hardware flow control"
1228	depends on SERIAL_BFIN_SPORT1_UART
1229	help
1230	  Enable hardware flow control in the driver.
1231
1232config SERIAL_BFIN_SPORT2_UART
1233	bool "Enable UART over SPORT2"
1234	depends on SERIAL_BFIN_SPORT && (BF54x || BF538 || BF539)
1235	help
1236	  Enable UART over SPORT2
1237
1238config SERIAL_BFIN_SPORT2_UART_CTSRTS
1239	bool "Enable UART over SPORT2 hardware flow control"
1240	depends on SERIAL_BFIN_SPORT2_UART
1241	help
1242	  Enable hardware flow control in the driver.
1243
1244config SERIAL_BFIN_SPORT3_UART
1245	bool "Enable UART over SPORT3"
1246	depends on SERIAL_BFIN_SPORT && (BF54x || BF538 || BF539)
1247	help
1248	  Enable UART over SPORT3
1249
1250config SERIAL_BFIN_SPORT3_UART_CTSRTS
1251	bool "Enable UART over SPORT3 hardware flow control"
1252	depends on SERIAL_BFIN_SPORT3_UART
1253	help
1254	  Enable hardware flow control in the driver.
1255
1256config SERIAL_TIMBERDALE
1257	tristate "Support for timberdale UART"
1258	select SERIAL_CORE
1259	depends on X86_32 || COMPILE_TEST
1260	---help---
1261	Add support for UART controller on timberdale.
1262
1263config SERIAL_BCM63XX
1264	tristate "Broadcom BCM63xx/BCM33xx UART support"
1265	select SERIAL_CORE
1266	depends on MIPS || ARM || COMPILE_TEST
1267	help
1268	  This enables the driver for the onchip UART core found on
1269	  the following chipsets:
1270
1271	    BCM33xx (cable modem)
1272	    BCM63xx/BCM63xxx (DSL)
1273	    BCM68xx (PON)
1274	    BCM7xxx (STB) - DOCSIS console
1275
1276config SERIAL_BCM63XX_CONSOLE
1277	bool "Console on BCM63xx serial port"
1278	depends on SERIAL_BCM63XX=y
1279	select SERIAL_CORE_CONSOLE
1280	select SERIAL_EARLYCON
1281	help
1282	  If you have enabled the serial port on the BCM63xx CPU
1283	  you can make it the console by answering Y to this option.
1284
1285config SERIAL_GRLIB_GAISLER_APBUART
1286	tristate "GRLIB APBUART serial support"
1287	depends on OF && SPARC
1288	select SERIAL_CORE
1289	---help---
1290	Add support for the GRLIB APBUART serial port.
1291
1292config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1293	bool "Console on GRLIB APBUART serial port"
1294	depends on SERIAL_GRLIB_GAISLER_APBUART=y
1295	select SERIAL_CORE_CONSOLE
1296	help
1297	Support for running a console on the GRLIB APBUART
1298
1299config SERIAL_ALTERA_JTAGUART
1300	tristate "Altera JTAG UART support"
1301	select SERIAL_CORE
1302	help
1303	  This driver supports the Altera JTAG UART port.
1304
1305config SERIAL_ALTERA_JTAGUART_CONSOLE
1306	bool "Altera JTAG UART console support"
1307	depends on SERIAL_ALTERA_JTAGUART=y
1308	select SERIAL_CORE_CONSOLE
1309	help
1310	  Enable a Altera JTAG UART port to be the system console.
1311
1312config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1313	bool "Bypass output when no connection"
1314	depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1315	select SERIAL_CORE_CONSOLE
1316	help
1317	  Bypass console output and keep going even if there is no
1318	  JTAG terminal connection with the host.
1319
1320config SERIAL_ALTERA_UART
1321	tristate "Altera UART support"
1322	select SERIAL_CORE
1323	help
1324	  This driver supports the Altera softcore UART port.
1325
1326config SERIAL_ALTERA_UART_MAXPORTS
1327	int "Maximum number of Altera UART ports"
1328	depends on SERIAL_ALTERA_UART
1329	default 4
1330	help
1331	  This setting lets you define the maximum number of the Altera
1332	  UART ports. The usual default varies from board to board, and
1333	  this setting is a way of catering for that.
1334
1335config SERIAL_ALTERA_UART_BAUDRATE
1336	int "Default baudrate for Altera UART ports"
1337	depends on SERIAL_ALTERA_UART
1338	default 115200
1339	help
1340	  This setting lets you define what the default baudrate is for the
1341	  Altera UART ports. The usual default varies from board to board,
1342	  and this setting is a way of catering for that.
1343
1344config SERIAL_ALTERA_UART_CONSOLE
1345	bool "Altera UART console support"
1346	depends on SERIAL_ALTERA_UART=y
1347	select SERIAL_CORE_CONSOLE
1348	help
1349	  Enable a Altera UART port to be the system console.
1350
1351config SERIAL_IFX6X60
1352        tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)"
1353	depends on GPIOLIB || COMPILE_TEST
1354	depends on SPI && HAS_DMA
1355	help
1356	  Support for the IFX6x60 modem devices on Intel MID platforms.
1357
1358config SERIAL_PCH_UART
1359	tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1360	depends on PCI && (X86_32 || COMPILE_TEST)
1361	select SERIAL_CORE
1362	help
1363	  This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1364	  which is an IOH(Input/Output Hub) for x86 embedded processor.
1365	  Enabling PCH_DMA, this PCH UART works as DMA mode.
1366
1367	  This driver also can be used for LAPIS Semiconductor IOH(Input/
1368	  Output Hub), ML7213, ML7223 and ML7831.
1369	  ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1370	  for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1371	  ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1372	  ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1373
1374config SERIAL_PCH_UART_CONSOLE
1375	bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1376	depends on SERIAL_PCH_UART=y
1377	select SERIAL_CORE_CONSOLE
1378	help
1379	  Say Y here if you wish to use the PCH UART as the system console
1380	  (the system  console is the device which receives all kernel messages and
1381	  warnings and which allows logins in single user mode).
1382
1383config SERIAL_MXS_AUART
1384	tristate "MXS AUART support"
1385	depends on HAS_DMA
1386	depends on ARCH_MXS || COMPILE_TEST
1387	select SERIAL_CORE
1388	select SERIAL_MCTRL_GPIO if GPIOLIB
1389	help
1390	  This driver supports the MXS Application UART (AUART) port.
1391
1392config SERIAL_MXS_AUART_CONSOLE
1393	bool "MXS AUART console support"
1394	depends on SERIAL_MXS_AUART=y
1395	select SERIAL_CORE_CONSOLE
1396	help
1397	  Enable a MXS AUART port to be the system console.
1398
1399config SERIAL_XILINX_PS_UART
1400	tristate "Cadence (Xilinx Zynq) UART support"
1401	depends on OF
1402	select SERIAL_CORE
1403	help
1404	  This driver supports the Cadence UART. It is found e.g. in Xilinx
1405	  Zynq.
1406
1407config SERIAL_XILINX_PS_UART_CONSOLE
1408	bool "Cadence UART console support"
1409	depends on SERIAL_XILINX_PS_UART=y
1410	select SERIAL_CORE_CONSOLE
1411	select SERIAL_EARLYCON
1412	help
1413	  Enable a Cadence UART port to be the system console.
1414
1415config SERIAL_AR933X
1416	tristate "AR933X serial port support"
1417	depends on HAVE_CLK && SOC_AR933X
1418	select SERIAL_CORE
1419	help
1420	  If you have an Atheros AR933X SOC based board and want to use the
1421	  built-in UART of the SoC, say Y to this option.
1422
1423	  To compile this driver as a module, choose M here: the
1424	  module will be called ar933x_uart.
1425
1426config SERIAL_AR933X_CONSOLE
1427	bool "Console on AR933X serial port"
1428	depends on SERIAL_AR933X=y
1429	select SERIAL_CORE_CONSOLE
1430	help
1431	  Enable a built-in UART port of the AR933X to be the system console.
1432
1433config SERIAL_AR933X_NR_UARTS
1434	int "Maximum number of AR933X serial ports"
1435	depends on SERIAL_AR933X
1436	default "2"
1437	help
1438	  Set this to the number of serial ports you want the driver
1439	  to support.
1440
1441config SERIAL_EFM32_UART
1442	tristate "EFM32 UART/USART port"
1443	depends on ARM && (ARCH_EFM32 || COMPILE_TEST)
1444	select SERIAL_CORE
1445	help
1446	  This driver support the USART and UART ports on
1447	  Energy Micro's efm32 SoCs.
1448
1449config SERIAL_EFM32_UART_CONSOLE
1450	bool "EFM32 UART/USART console support"
1451	depends on SERIAL_EFM32_UART=y
1452	select SERIAL_CORE_CONSOLE
1453
1454config SERIAL_TILEGX
1455	tristate "TILE-Gx on-chip serial port support"
1456	depends on TILEGX
1457	select TILE_GXIO_UART
1458	select SERIAL_CORE
1459	---help---
1460	  This device provides access to the on-chip UARTs on the TILE-Gx
1461	  processor.
1462
1463config SERIAL_ARC
1464	tristate "ARC UART driver support"
1465	select SERIAL_CORE
1466	help
1467	  Driver for on-chip UART for ARC(Synopsys) for the legacy
1468	  FPGA Boards (ML50x/ARCAngel4)
1469
1470config SERIAL_ARC_CONSOLE
1471	bool "Console on ARC UART"
1472	depends on SERIAL_ARC=y
1473	select SERIAL_CORE_CONSOLE
1474	select SERIAL_EARLYCON
1475	help
1476	  Enable system Console on ARC UART
1477
1478config SERIAL_ARC_NR_PORTS
1479	int "Number of ARC UART ports"
1480	depends on SERIAL_ARC
1481	range 1 3
1482	default "1"
1483	help
1484	  Set this to the number of serial ports you want the driver
1485	  to support.
1486
1487config SERIAL_RP2
1488	tristate "Comtrol RocketPort EXPRESS/INFINITY support"
1489	depends on PCI
1490	select SERIAL_CORE
1491	help
1492	  This driver supports the Comtrol RocketPort EXPRESS and
1493	  RocketPort INFINITY families of PCI/PCIe multiport serial adapters.
1494	  These adapters use a "RocketPort 2" ASIC that is not compatible
1495	  with the original RocketPort driver (CONFIG_ROCKETPORT).
1496
1497	  To compile this driver as a module, choose M here: the
1498	  module will be called rp2.
1499
1500	  If you want to compile this driver into the kernel, say Y here.  If
1501	  you don't have a suitable RocketPort card installed, say N.
1502
1503config SERIAL_RP2_NR_UARTS
1504	int "Maximum number of RocketPort EXPRESS/INFINITY ports"
1505	depends on SERIAL_RP2
1506	default "32"
1507	help
1508	  If multiple cards are present, the default limit of 32 ports may
1509	  need to be increased.
1510
1511config SERIAL_FSL_LPUART
1512	tristate "Freescale lpuart serial port support"
1513	depends on HAS_DMA
1514	select SERIAL_CORE
1515	help
1516	  Support for the on-chip lpuart on some Freescale SOCs.
1517
1518config SERIAL_FSL_LPUART_CONSOLE
1519	bool "Console on Freescale lpuart serial port"
1520	depends on SERIAL_FSL_LPUART=y
1521	select SERIAL_CORE_CONSOLE
1522	select SERIAL_EARLYCON
1523	help
1524	  If you have enabled the lpuart serial port on the Freescale SoCs,
1525	  you can make it the console by answering Y to this option.
1526
1527config SERIAL_CONEXANT_DIGICOLOR
1528	tristate "Conexant Digicolor CX92xxx USART serial port support"
1529	depends on OF
1530	select SERIAL_CORE
1531	help
1532	  Support for the on-chip USART on Conexant Digicolor SoCs.
1533
1534config SERIAL_CONEXANT_DIGICOLOR_CONSOLE
1535	bool "Console on Conexant Digicolor serial port"
1536	depends on SERIAL_CONEXANT_DIGICOLOR=y
1537	select SERIAL_CORE_CONSOLE
1538	help
1539	  If you have enabled the USART serial port on Conexant Digicolor
1540	  SoCs, you can make it the console by answering Y to this option.
1541
1542config SERIAL_ST_ASC
1543	tristate "ST ASC serial port support"
1544	select SERIAL_CORE
1545	depends on ARM || COMPILE_TEST
1546	help
1547	  This driver is for the on-chip Asychronous Serial Controller on
1548	  STMicroelectronics STi SoCs.
1549	  ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality.
1550	  It support all industry standard baud rates.
1551
1552	  If unsure, say N.
1553
1554config SERIAL_ST_ASC_CONSOLE
1555	bool "Support for console on ST ASC"
1556	depends on SERIAL_ST_ASC=y
1557	select SERIAL_CORE_CONSOLE
1558
1559config SERIAL_MEN_Z135
1560	tristate "MEN 16z135 Support"
1561	select SERIAL_CORE
1562	depends on MCB
1563	help
1564	  Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core
1565	  on a MCB carrier.
1566
1567	  This driver can also be build as a module. If so, the module will be called
1568	  men_z135_uart.ko
1569
1570config SERIAL_SPRD
1571	tristate "Support for Spreadtrum serial"
1572	depends on ARCH_SPRD
1573	select SERIAL_CORE
1574	help
1575	  This enables the driver for the Spreadtrum's serial.
1576
1577config SERIAL_SPRD_CONSOLE
1578	bool "Spreadtrum UART console support"
1579	depends on SERIAL_SPRD=y
1580	select SERIAL_CORE_CONSOLE
1581	select SERIAL_EARLYCON
1582	help
1583	  Support for early debug console using Spreadtrum's serial. This enables
1584	  the console before standard serial driver is probed. This is enabled
1585	  with "earlycon" on the kernel command line. The console is
1586	  enabled when early_param is processed.
1587
1588config SERIAL_STM32
1589	tristate "STMicroelectronics STM32 serial port support"
1590	select SERIAL_CORE
1591	depends on ARM || COMPILE_TEST
1592	help
1593	  This driver is for the on-chip Serial Controller on
1594	  STMicroelectronics STM32 MCUs.
1595	  USART supports Rx & Tx functionality.
1596	  It support all industry standard baud rates.
1597
1598	  If unsure, say N.
1599
1600config SERIAL_STM32_CONSOLE
1601	bool "Support for console on STM32"
1602	depends on SERIAL_STM32=y
1603	select SERIAL_CORE_CONSOLE
1604
1605config SERIAL_MVEBU_UART
1606	bool "Marvell EBU serial port support"
1607	select SERIAL_CORE
1608	help
1609	  This driver is for Marvell EBU SoC's UART. If you have a machine
1610	  based on the Armada-3700 SoC and wish to use the on-board serial
1611	  port,
1612	  say 'Y' here.
1613	  Otherwise, say 'N'.
1614
1615config SERIAL_MVEBU_CONSOLE
1616	bool "Console on Marvell EBU serial port"
1617	depends on SERIAL_MVEBU_UART
1618	select SERIAL_CORE_CONSOLE
1619	select SERIAL_EARLYCON
1620	default y
1621	help
1622	  Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1623	  (the system console is the device which receives all kernel messages
1624	  and warnings and which allows logins in single user mode)
1625	  Otherwise, say 'N'.
1626
1627endmenu
1628
1629config SERIAL_MCTRL_GPIO
1630	tristate
1631
1632endif # TTY
1633