xref: /linux/drivers/tty/serial/Kconfig (revision 3ad0876554cafa368f574d4d408468510543e9ff)
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 on-chip serial port support"
118	depends on HAS_DMA
119	depends on ARCH_AT91 || 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 processors.
125
126config 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
136config 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
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 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	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
223config 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
232config 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
242config 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
252config 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
259config 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
268config 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
277config 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
293config 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
303config 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
315config 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
326config SERIAL_MAX3100
327	tristate "MAX3100 support"
328	depends on SPI
329	select SERIAL_CORE
330	help
331	  MAX3100 chip support
332
333config 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
347config 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
356config 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
372config 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
386config 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
402config 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
411config 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
426config 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
433config 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
440config 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
453config SERIAL_PXA_NON8250
454	bool
455	depends on !SERIAL_8250
456
457config 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
476config 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
486config 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
501config SERIAL_IMX
502	tristate "IMX serial port support"
503	depends on HAS_DMA
504	depends on ARCH_MXC || COMPILE_TEST
505	select SERIAL_CORE
506	select RATIONAL
507	select SERIAL_MCTRL_GPIO if GPIOLIB
508	help
509	  If you have a machine based on a Motorola IMX CPU you
510	  can enable its onboard serial port by enabling this option.
511
512config SERIAL_IMX_CONSOLE
513	bool "Console on IMX serial port"
514	depends on SERIAL_IMX=y
515	select SERIAL_CORE_CONSOLE
516	select SERIAL_EARLYCON if OF
517	help
518	  If you have enabled the serial port on the Freescale IMX
519	  CPU you can make it the console by answering Y to this option.
520
521	  Even if you say Y here, the currently visible virtual console
522	  (/dev/tty0) will still be used as the system console by default, but
523	  you can alter that using a kernel command line option such as
524	  "console=ttymxc0". (Try "man bootparam" or see the documentation of
525	  your bootloader about how to pass options to the kernel at boot time.)
526
527config SERIAL_UARTLITE
528	tristate "Xilinx uartlite serial port support"
529	depends on HAS_IOMEM
530	select SERIAL_CORE
531	help
532	  Say Y here if you want to use the Xilinx uartlite serial controller.
533
534	  To compile this driver as a module, choose M here: the
535	  module will be called uartlite.
536
537config SERIAL_UARTLITE_CONSOLE
538	bool "Support for console on Xilinx uartlite serial port"
539	depends on SERIAL_UARTLITE=y
540	select SERIAL_CORE_CONSOLE
541	select SERIAL_EARLYCON
542	help
543	  Say Y here if you wish to use a Xilinx uartlite as the system
544	  console (the system console is the device which receives all kernel
545	  messages and warnings and which allows logins in single user mode).
546
547config SERIAL_UARTLITE_NR_UARTS
548	int "Maximum number of uartlite serial ports"
549	depends on SERIAL_UARTLITE
550	range 1 256
551	default 1
552	help
553	  Set this to the number of uartlites in your system, or the number
554	  you think you might implement.
555
556config SERIAL_SUNCORE
557	bool
558	depends on SPARC
559	select SERIAL_CORE
560	select SERIAL_CORE_CONSOLE
561	default y
562
563config SERIAL_SUNZILOG
564	tristate "Sun Zilog8530 serial support"
565	depends on SPARC
566	help
567	  This driver supports the Zilog8530 serial ports found on many Sparc
568	  systems.  Say Y or M if you want to be able to these serial ports.
569
570config SERIAL_SUNZILOG_CONSOLE
571	bool "Console on Sun Zilog8530 serial port"
572	depends on SERIAL_SUNZILOG=y
573	help
574	  If you would like to be able to use the Zilog8530 serial port
575	  on your Sparc system as the console, you can do so by answering
576	  Y to this option.
577
578config SERIAL_SUNSU
579	tristate "Sun SU serial support"
580	depends on SPARC && PCI
581	help
582	  This driver supports the 8250 serial ports that run the keyboard and
583	  mouse on (PCI) UltraSPARC systems.  Say Y or M if you want to be able
584	  to these serial ports.
585
586config SERIAL_SUNSU_CONSOLE
587	bool "Console on Sun SU serial port"
588	depends on SERIAL_SUNSU=y
589	help
590	  If you would like to be able to use the SU serial port
591	  on your Sparc system as the console, you can do so by answering
592	  Y to this option.
593
594config SERIAL_MUX
595	tristate "Serial MUX support"
596	depends on GSC
597	select SERIAL_CORE
598	default y
599	---help---
600	  Saying Y here will enable the hardware MUX serial driver for
601	  the Nova, K class systems and D class with a 'remote control card'.
602	  The hardware MUX is not 8250/16550 compatible therefore the
603	  /dev/ttyB0 device is shared between the Serial MUX and the PDC
604	  software console. The following steps need to be completed to use
605	  the Serial MUX:
606
607	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
608	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
609	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
610		 root on this console.)
611	    4. Change the kernel command console parameter to: console=ttyB0
612
613config SERIAL_MUX_CONSOLE
614	bool "Support for console on serial MUX"
615	depends on SERIAL_MUX=y
616	select SERIAL_CORE_CONSOLE
617	default y
618
619config PDC_CONSOLE
620	bool "PDC software console support"
621	depends on PARISC && !SERIAL_MUX && VT
622	default n
623	help
624	  Saying Y here will enable the software based PDC console to be
625	  used as the system console.  This is useful for machines in
626	  which the hardware based console has not been written yet.  The
627	  following steps must be completed to use the PDC console:
628
629	    1. create the device entry (mknod /dev/ttyB0 c 11 0)
630	    2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
631	    3. Add device ttyB0 to /etc/securetty (if you want to log on as
632		 root on this console.)
633	    4. Change the kernel command console parameter to: console=ttyB0
634
635config SERIAL_SUNSAB
636	tristate "Sun Siemens SAB82532 serial support"
637	depends on SPARC && PCI
638	help
639	  This driver supports the Siemens SAB82532 DUSCC serial ports on newer
640	  (PCI) UltraSPARC systems.  Say Y or M if you want to be able to these
641	  serial ports.
642
643config SERIAL_SUNSAB_CONSOLE
644	bool "Console on Sun Siemens SAB82532 serial port"
645	depends on SERIAL_SUNSAB=y
646	help
647	  If you would like to be able to use the SAB82532 serial port
648	  on your Sparc system as the console, you can do so by answering
649	  Y to this option.
650
651config SERIAL_SUNHV
652	bool "Sun4v Hypervisor Console support"
653	depends on SPARC64
654	help
655	  This driver supports the console device found on SUN4V Sparc
656	  systems.  Say Y if you want to be able to use this device.
657
658config SERIAL_IP22_ZILOG
659	tristate "SGI Zilog8530 serial support"
660	depends on SGI_HAS_ZILOG
661	select SERIAL_CORE
662	help
663	  This driver supports the Zilog8530 serial ports found on SGI
664	  systems.  Say Y or M if you want to be able to these serial ports.
665
666config SERIAL_IP22_ZILOG_CONSOLE
667	bool "Console on SGI Zilog8530 serial port"
668	depends on SERIAL_IP22_ZILOG=y
669	select SERIAL_CORE_CONSOLE
670
671config SERIAL_SH_SCI
672	tristate "SuperH SCI(F) serial port support"
673	depends on SUPERH || ARCH_RENESAS || H8300 || COMPILE_TEST
674	select SERIAL_CORE
675	select SERIAL_MCTRL_GPIO if GPIOLIB
676
677config SERIAL_SH_SCI_NR_UARTS
678	int "Maximum number of SCI(F) serial ports" if EXPERT
679	depends on SERIAL_SH_SCI
680	default "3" if H8300
681	default "10" if SUPERH
682	default "18" if ARCH_RENESAS
683	default "2"
684
685config SERIAL_SH_SCI_CONSOLE
686	bool "Support for console on SuperH SCI(F)" if EXPERT
687	depends on SERIAL_SH_SCI=y
688	select SERIAL_CORE_CONSOLE
689	default y
690
691config SERIAL_SH_SCI_EARLYCON
692	bool "Support for early console on SuperH SCI(F)" if EXPERT
693	depends on SERIAL_SH_SCI=y
694	select SERIAL_CORE_CONSOLE
695	select SERIAL_EARLYCON
696	default ARCH_RENESAS || H8300
697
698config SERIAL_SH_SCI_DMA
699	bool "DMA support" if EXPERT
700	depends on SERIAL_SH_SCI && DMA_ENGINE
701	default ARCH_RENESAS
702
703config SERIAL_PNX8XXX
704	bool "Enable PNX8XXX SoCs' UART Support"
705	depends on SOC_PNX833X
706	select SERIAL_CORE
707	help
708	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
709	  to use serial ports, say Y.  Otherwise, say N.
710
711config SERIAL_PNX8XXX_CONSOLE
712	bool "Enable PNX8XX0 serial console"
713	depends on SERIAL_PNX8XXX
714	select SERIAL_CORE_CONSOLE
715	help
716	  If you have a MIPS-based Philips SoC such as PNX8330 and you want
717	  to use serial console, say Y. Otherwise, say N.
718
719config SERIAL_HS_LPC32XX
720	tristate "LPC32XX high speed serial port support"
721	depends on ARCH_LPC32XX && OF
722	select SERIAL_CORE
723	help
724	  Support for the LPC32XX high speed serial ports (up to 900kbps).
725	  Those are UARTs completely different from the Standard UARTs on the
726	  LPC32XX SoC.
727	  Choose M or Y here to build this driver.
728
729config SERIAL_HS_LPC32XX_CONSOLE
730	bool "Enable LPC32XX high speed UART serial console"
731	depends on SERIAL_HS_LPC32XX=y
732	select SERIAL_CORE_CONSOLE
733	help
734	  If you would like to be able to use one of the high speed serial
735	  ports on the LPC32XX as the console, you can do so by answering
736	  Y to this option.
737
738config SERIAL_CORE
739	tristate
740
741config SERIAL_CORE_CONSOLE
742	bool
743
744config CONSOLE_POLL
745	bool
746
747config SERIAL_MCF
748	bool "Coldfire serial support"
749	depends on COLDFIRE
750	select SERIAL_CORE
751	help
752	  This serial driver supports the Freescale Coldfire serial ports.
753
754config SERIAL_MCF_BAUDRATE
755	int "Default baudrate for Coldfire serial ports"
756	depends on SERIAL_MCF
757	default 19200
758	help
759	  This setting lets you define what the default baudrate is for the
760	  ColdFire serial ports. The usual default varies from board to board,
761	  and this setting is a way of catering for that.
762
763config SERIAL_MCF_CONSOLE
764	bool "Coldfire serial console support"
765	depends on SERIAL_MCF
766	select SERIAL_CORE_CONSOLE
767	help
768	  Enable a ColdFire internal serial port to be the system console.
769
770config SERIAL_PMACZILOG
771	tristate "Mac or PowerMac z85c30 ESCC support"
772	depends on (M68K && MAC) || PPC_PMAC
773	select SERIAL_CORE
774	help
775	  This driver supports the Zilog z85C30 serial ports found on
776	  (Power)Mac machines.
777	  Say Y or M if you want to be able to these serial ports.
778
779config SERIAL_PMACZILOG_TTYS
780	bool "Use ttySn device nodes for Zilog z85c30"
781	depends on SERIAL_PMACZILOG
782	help
783	  The pmac_zilog driver for the z85C30 chip on many powermacs
784	  historically used the device numbers for /dev/ttySn.  The
785	  8250 serial port driver also uses these numbers, which means
786	  the two drivers being unable to coexist; you could not use
787	  both z85C30 and 8250 type ports at the same time.
788
789	  If this option is not selected, the pmac_zilog driver will
790	  use the device numbers allocated for /dev/ttyPZn.  This allows
791	  the pmac_zilog and 8250 drivers to co-exist, but may cause
792	  existing userspace setups to break.  Programs that need to
793	  access the built-in serial ports on powermacs will need to
794	  be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
795
796	  If you enable this option, any z85c30 ports in the system will
797	  be registered as ttyS0 onwards as in the past, and you will be
798	  unable to use the 8250 module for PCMCIA or other 16C550-style
799	  UARTs.
800
801	  Say N unless you need the z85c30 ports on your (Power)Mac
802	  to appear as /dev/ttySn.
803
804config SERIAL_PMACZILOG_CONSOLE
805	bool "Console on Mac or PowerMac z85c30 serial port"
806	depends on SERIAL_PMACZILOG=y
807	select SERIAL_CORE_CONSOLE
808	help
809	  If you would like to be able to use the z85c30 serial port
810	  on your (Power)Mac as the console, you can do so by answering
811	  Y to this option.
812
813config SERIAL_CPM
814	tristate "CPM SCC/SMC serial port support"
815	depends on CPM2 || CPM1
816	select SERIAL_CORE
817	help
818	  This driver supports the SCC and SMC serial ports on Motorola
819	  embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
820
821config SERIAL_CPM_CONSOLE
822	bool "Support for console on CPM SCC/SMC serial port"
823	depends on SERIAL_CPM=y
824	select SERIAL_CORE_CONSOLE
825	help
826	  Say Y here if you wish to use a SCC or SMC CPM UART as the system
827	  console (the system console is the device which receives all kernel
828	  messages and warnings and which allows logins in single user mode).
829
830	  Even if you say Y here, the currently visible framebuffer console
831	  (/dev/tty0) will still be used as the system console by default, but
832	  you can alter that using a kernel command line option such as
833	  "console=ttyCPM0". (Try "man bootparam" or see the documentation of
834	  your boot loader (lilo or loadlin) about how to pass options to the
835	  kernel at boot time.)
836
837config SERIAL_SGI_L1_CONSOLE
838	bool "SGI Altix L1 serial console support"
839	depends on IA64_GENERIC || IA64_SGI_SN2
840	select SERIAL_CORE
841	select SERIAL_CORE_CONSOLE
842	help
843		If you have an SGI Altix and you would like to use the system
844		controller serial port as your console (you want this!),
845		say Y.  Otherwise, say N.
846
847config SERIAL_PIC32
848	tristate "Microchip PIC32 serial support"
849	depends on MACH_PIC32
850	select SERIAL_CORE
851	help
852	  If you have a PIC32, this driver supports the serial ports.
853
854	  Say Y or M to use PIC32 serial ports, otherwise say N. Note that
855	  to use a serial port as a console, this must be included in kernel and
856	  not as a module.
857
858config SERIAL_PIC32_CONSOLE
859	bool "PIC32 serial console support"
860	depends on SERIAL_PIC32
861	select SERIAL_CORE_CONSOLE
862	help
863	  If you have a PIC32, this driver supports the putting a console on one
864	  of the serial ports.
865
866	  Say Y to use the PIC32 console, otherwise say N.
867
868config SERIAL_MPC52xx
869	tristate "Freescale MPC52xx/MPC512x family PSC serial support"
870	depends on PPC_MPC52xx || PPC_MPC512x
871	select SERIAL_CORE
872	help
873	  This driver supports MPC52xx and MPC512x PSC serial ports. If you would
874	  like to use them, you must answer Y or M to this option. Note that
875	  for use as console, it must be included in kernel and not as a
876	  module.
877
878config SERIAL_MPC52xx_CONSOLE
879	bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port"
880	depends on SERIAL_MPC52xx=y
881	select SERIAL_CORE_CONSOLE
882	help
883	  Select this options if you'd like to use one of the PSC serial port
884	  of the Freescale MPC52xx family as a console.
885
886config SERIAL_MPC52xx_CONSOLE_BAUD
887	int "Freescale MPC52xx/MPC512x family PSC serial port baud"
888	depends on SERIAL_MPC52xx_CONSOLE=y
889	default "9600"
890	help
891	  Select the MPC52xx console baud rate.
892	  This value is only used if the bootloader doesn't pass in the
893	  console baudrate
894
895config SERIAL_ICOM
896	tristate "IBM Multiport Serial Adapter"
897	depends on PCI && PPC_PSERIES
898	select SERIAL_CORE
899	select FW_LOADER
900	help
901	  This driver is for a family of multiport serial adapters
902	  including 2 port RVX, 2 port internal modem, 4 port internal
903	  modem and a split 1 port RVX and 1 port internal modem.
904
905	  This driver can also be built as a module.  If so, the module
906	  will be called icom.
907
908config SERIAL_TXX9
909	bool "TMPTX39XX/49XX SIO support"
910	depends on HAS_TXX9_SERIAL
911	select SERIAL_CORE
912	default y
913
914config HAS_TXX9_SERIAL
915	bool
916
917config SERIAL_TXX9_NR_UARTS
918	int "Maximum number of TMPTX39XX/49XX SIO ports"
919	depends on SERIAL_TXX9
920	default "6"
921
922config SERIAL_TXX9_CONSOLE
923	bool "TMPTX39XX/49XX SIO Console support"
924	depends on SERIAL_TXX9=y
925	select SERIAL_CORE_CONSOLE
926
927config SERIAL_TXX9_STDSERIAL
928	bool "TX39XX/49XX SIO act as standard serial"
929	depends on !SERIAL_8250 && SERIAL_TXX9
930
931config SERIAL_VR41XX
932	tristate "NEC VR4100 series Serial Interface Unit support"
933	depends on CPU_VR41XX
934	select SERIAL_CORE
935	help
936	  If you have a NEC VR4100 series processor and you want to use
937	  Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU)
938	  (not include VR4111/VR4121 DSIU), say Y.  Otherwise, say N.
939
940config SERIAL_VR41XX_CONSOLE
941	bool "Enable NEC VR4100 series Serial Interface Unit console"
942	depends on SERIAL_VR41XX=y
943	select SERIAL_CORE_CONSOLE
944	help
945	  If you have a NEC VR4100 series processor and you want to use
946	  a console on a serial port, say Y.  Otherwise, say N.
947
948config SERIAL_JSM
949	tristate "Digi International NEO and Classic PCI Support"
950	depends on PCI
951	select SERIAL_CORE
952	help
953	  This is a driver for Digi International's Neo and Classic series
954	  of cards which provide multiple serial ports. You would need
955	  something like this to connect more than two modems to your Linux
956	  box, for instance in order to become a dial-in server. This driver
957	  supports PCI boards only.
958
959	  If you have a card like this, say Y here, otherwise say N.
960
961	  To compile this driver as a module, choose M here: the
962	  module will be called jsm.
963
964config SERIAL_SGI_IOC4
965	tristate "SGI IOC4 controller serial support"
966	depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC4
967	select SERIAL_CORE
968	help
969		If you have an SGI Altix with an IOC4 based Base IO card
970		and wish to use the serial ports on this card, say Y.
971		Otherwise, say N.
972
973config SERIAL_SGI_IOC3
974	tristate "SGI Altix IOC3 serial support"
975	depends on (IA64_GENERIC || IA64_SGI_SN2) && SGI_IOC3
976	select SERIAL_CORE
977	help
978	  If you have an SGI Altix with an IOC3 serial card,
979	  say Y or M.  Otherwise, say N.
980
981config SERIAL_MSM
982	tristate "MSM on-chip serial port support"
983	depends on ARCH_QCOM
984	select SERIAL_CORE
985
986config SERIAL_MSM_CONSOLE
987	bool "MSM serial console support"
988	depends on SERIAL_MSM=y
989	select SERIAL_CORE_CONSOLE
990	select SERIAL_EARLYCON
991
992config SERIAL_QCOM_GENI
993	tristate "QCOM on-chip GENI based serial port support"
994	depends on ARCH_QCOM || COMPILE_TEST
995	depends on QCOM_GENI_SE
996	select SERIAL_CORE
997
998config SERIAL_QCOM_GENI_CONSOLE
999	bool "QCOM GENI Serial Console support"
1000	depends on SERIAL_QCOM_GENI=y
1001	select SERIAL_CORE_CONSOLE
1002	select SERIAL_EARLYCON
1003	help
1004	  Serial console driver for Qualcomm Technologies Inc's GENI based
1005	  QUP hardware.
1006
1007config SERIAL_VT8500
1008	bool "VIA VT8500 on-chip serial port support"
1009	depends on ARCH_VT8500
1010	select SERIAL_CORE
1011
1012config SERIAL_VT8500_CONSOLE
1013	bool "VIA VT8500 serial console support"
1014	depends on SERIAL_VT8500=y
1015	select SERIAL_CORE_CONSOLE
1016
1017config SERIAL_NETX
1018	tristate "NetX serial port support"
1019	depends on ARCH_NETX
1020	select SERIAL_CORE
1021	help
1022	  If you have a machine based on a Hilscher NetX SoC you
1023	  can enable its onboard serial port by enabling this option.
1024
1025          To compile this driver as a module, choose M here: the
1026          module will be called netx-serial.
1027
1028config SERIAL_NETX_CONSOLE
1029	bool "Console on NetX serial port"
1030	depends on SERIAL_NETX=y
1031	select SERIAL_CORE_CONSOLE
1032	help
1033	  If you have enabled the serial port on the Hilscher NetX SoC
1034	  you can make it the console by answering Y to this option.
1035
1036config SERIAL_OMAP
1037	tristate "OMAP serial port support"
1038	depends on ARCH_OMAP2PLUS
1039	select SERIAL_CORE
1040	help
1041	  If you have a machine based on an Texas Instruments OMAP CPU you
1042	  can enable its onboard serial ports by enabling this option.
1043
1044	  By enabling this option you take advantage of dma feature available
1045	  with the omap-serial driver. DMA support can be enabled from platform
1046	  data.
1047
1048config SERIAL_OMAP_CONSOLE
1049	bool "Console on OMAP serial port"
1050	depends on SERIAL_OMAP=y
1051	select SERIAL_CORE_CONSOLE
1052	help
1053	  Select this option if you would like to use omap serial port as
1054	  console.
1055
1056	  Even if you say Y here, the currently visible virtual console
1057	  (/dev/tty0) will still be used as the system console by default, but
1058	  you can alter that using a kernel command line option such as
1059	  "console=ttyOx". (Try "man bootparam" or see the documentation of
1060	  your boot loader about how to pass options to the kernel at
1061	  boot time.)
1062
1063config SERIAL_LANTIQ
1064	bool "Lantiq serial driver"
1065	depends on LANTIQ
1066	select SERIAL_CORE
1067	select SERIAL_CORE_CONSOLE
1068	select SERIAL_EARLYCON
1069	help
1070	  Support for console and UART on Lantiq SoCs.
1071
1072config SERIAL_QE
1073	tristate "Freescale QUICC Engine serial port support"
1074	depends on QUICC_ENGINE
1075	select SERIAL_CORE
1076	select FW_LOADER
1077	default n
1078	help
1079	  This driver supports the QE serial ports on Freescale embedded
1080	  PowerPC that contain a QUICC Engine.
1081
1082config SERIAL_SCCNXP
1083	tristate "SCCNXP serial port support"
1084	select SERIAL_CORE
1085	help
1086	  This selects support for an advanced UART from NXP (Philips).
1087	  Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1088	  SC28L202, SCC68681 and SCC68692.
1089
1090config SERIAL_SCCNXP_CONSOLE
1091	bool "Console on SCCNXP serial port"
1092	depends on SERIAL_SCCNXP=y
1093	select SERIAL_CORE_CONSOLE
1094	help
1095	  Support for console on SCCNXP serial ports.
1096
1097config SERIAL_SC16IS7XX_CORE
1098        tristate
1099
1100config SERIAL_SC16IS7XX
1101        tristate "SC16IS7xx serial support"
1102        select SERIAL_CORE
1103        depends on (SPI_MASTER && !I2C) || I2C
1104        help
1105          This selects support for SC16IS7xx serial ports.
1106          Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1107          SC16IS760 and SC16IS762. Select supported buses using options below.
1108
1109config SERIAL_SC16IS7XX_I2C
1110        bool "SC16IS7xx for I2C interface"
1111        depends on SERIAL_SC16IS7XX
1112        depends on I2C
1113        select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1114        select REGMAP_I2C if I2C
1115        default y
1116        help
1117          Enable SC16IS7xx driver on I2C bus,
1118          If required say y, and say n to i2c if not required,
1119          Enabled by default to support oldconfig.
1120          You must select at least one bus for the driver to be built.
1121
1122config SERIAL_SC16IS7XX_SPI
1123        bool "SC16IS7xx for spi interface"
1124        depends on SERIAL_SC16IS7XX
1125        depends on SPI_MASTER
1126        select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1127        select REGMAP_SPI if SPI_MASTER
1128        help
1129          Enable SC16IS7xx driver on SPI bus,
1130          If required say y, and say n to spi if not required,
1131          This is additional support to exsisting driver.
1132          You must select at least one bus for the driver to be built.
1133
1134config SERIAL_TIMBERDALE
1135	tristate "Support for timberdale UART"
1136	select SERIAL_CORE
1137	depends on X86_32 || COMPILE_TEST
1138	---help---
1139	Add support for UART controller on timberdale.
1140
1141config SERIAL_BCM63XX
1142	tristate "Broadcom BCM63xx/BCM33xx UART support"
1143	select SERIAL_CORE
1144	depends on MIPS || ARM || COMPILE_TEST
1145	help
1146	  This enables the driver for the onchip UART core found on
1147	  the following chipsets:
1148
1149	    BCM33xx (cable modem)
1150	    BCM63xx/BCM63xxx (DSL)
1151	    BCM68xx (PON)
1152	    BCM7xxx (STB) - DOCSIS console
1153
1154config SERIAL_BCM63XX_CONSOLE
1155	bool "Console on BCM63xx serial port"
1156	depends on SERIAL_BCM63XX=y
1157	select SERIAL_CORE_CONSOLE
1158	select SERIAL_EARLYCON
1159	help
1160	  If you have enabled the serial port on the BCM63xx CPU
1161	  you can make it the console by answering Y to this option.
1162
1163config SERIAL_GRLIB_GAISLER_APBUART
1164	tristate "GRLIB APBUART serial support"
1165	depends on OF && SPARC
1166	select SERIAL_CORE
1167	---help---
1168	Add support for the GRLIB APBUART serial port.
1169
1170config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1171	bool "Console on GRLIB APBUART serial port"
1172	depends on SERIAL_GRLIB_GAISLER_APBUART=y
1173	select SERIAL_CORE_CONSOLE
1174	help
1175	Support for running a console on the GRLIB APBUART
1176
1177config SERIAL_ALTERA_JTAGUART
1178	tristate "Altera JTAG UART support"
1179	select SERIAL_CORE
1180	help
1181	  This driver supports the Altera JTAG UART port.
1182
1183config SERIAL_ALTERA_JTAGUART_CONSOLE
1184	bool "Altera JTAG UART console support"
1185	depends on SERIAL_ALTERA_JTAGUART=y
1186	select SERIAL_CORE_CONSOLE
1187	select SERIAL_EARLYCON
1188	help
1189	  Enable a Altera JTAG UART port to be the system console.
1190
1191config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1192	bool "Bypass output when no connection"
1193	depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1194	select SERIAL_CORE_CONSOLE
1195	help
1196	  Bypass console output and keep going even if there is no
1197	  JTAG terminal connection with the host.
1198
1199config SERIAL_ALTERA_UART
1200	tristate "Altera UART support"
1201	select SERIAL_CORE
1202	help
1203	  This driver supports the Altera softcore UART port.
1204
1205config SERIAL_ALTERA_UART_MAXPORTS
1206	int "Maximum number of Altera UART ports"
1207	depends on SERIAL_ALTERA_UART
1208	default 4
1209	help
1210	  This setting lets you define the maximum number of the Altera
1211	  UART ports. The usual default varies from board to board, and
1212	  this setting is a way of catering for that.
1213
1214config SERIAL_ALTERA_UART_BAUDRATE
1215	int "Default baudrate for Altera UART ports"
1216	depends on SERIAL_ALTERA_UART
1217	default 115200
1218	help
1219	  This setting lets you define what the default baudrate is for the
1220	  Altera UART ports. The usual default varies from board to board,
1221	  and this setting is a way of catering for that.
1222
1223config SERIAL_ALTERA_UART_CONSOLE
1224	bool "Altera UART console support"
1225	depends on SERIAL_ALTERA_UART=y
1226	select SERIAL_CORE_CONSOLE
1227	select SERIAL_EARLYCON
1228	help
1229	  Enable a Altera UART port to be the system console.
1230
1231config SERIAL_IFX6X60
1232        tristate "SPI protocol driver for Infineon 6x60 modem (EXPERIMENTAL)"
1233	depends on GPIOLIB || COMPILE_TEST
1234	depends on SPI && HAS_DMA
1235	help
1236	  Support for the IFX6x60 modem devices on Intel MID platforms.
1237
1238config SERIAL_PCH_UART
1239	tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1240	depends on PCI && (X86_32 || MIPS ||  COMPILE_TEST)
1241	select SERIAL_CORE
1242	help
1243	  This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1244	  which is an IOH(Input/Output Hub) for x86 embedded processor.
1245	  Enabling PCH_DMA, this PCH UART works as DMA mode.
1246
1247	  This driver also can be used for LAPIS Semiconductor IOH(Input/
1248	  Output Hub), ML7213, ML7223 and ML7831.
1249	  ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1250	  for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1251	  ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1252	  ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1253
1254config SERIAL_PCH_UART_CONSOLE
1255	bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1256	depends on SERIAL_PCH_UART=y
1257	select SERIAL_CORE_CONSOLE
1258	help
1259	  Say Y here if you wish to use the PCH UART as the system console
1260	  (the system  console is the device which receives all kernel messages and
1261	  warnings and which allows logins in single user mode).
1262
1263config SERIAL_MXS_AUART
1264	tristate "MXS AUART support"
1265	depends on HAS_DMA
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
1273config 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
1280config 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
1288config 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
1296config SERIAL_AR933X
1297	tristate "AR933X serial port support"
1298	depends on HAVE_CLK && SOC_AR933X
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
1307config 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
1314config 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
1322config 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
1330config 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
1336config 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
1343config SERIAL_EFM32_UART_CONSOLE
1344	bool "EFM32 UART/USART console support"
1345	depends on SERIAL_EFM32_UART=y
1346	select SERIAL_CORE_CONSOLE
1347
1348config 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
1355config 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
1363config 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
1372config 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
1388config 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
1396config 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
1403config 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
1412config 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
1419config 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
1427config 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
1439config 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
1444config 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
1455config 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
1462config 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
1473config SERIAL_STM32
1474	tristate "STMicroelectronics STM32 serial port support"
1475	select SERIAL_CORE
1476	depends on HAS_DMA
1477	depends on ARCH_STM32 || COMPILE_TEST
1478	help
1479	  This driver is for the on-chip Serial Controller on
1480	  STMicroelectronics STM32 MCUs.
1481	  USART supports Rx & Tx functionality.
1482	  It support all industry standard baud rates.
1483
1484	  If unsure, say N.
1485
1486config SERIAL_STM32_CONSOLE
1487	bool "Support for console on STM32"
1488	depends on SERIAL_STM32=y
1489	select SERIAL_CORE_CONSOLE
1490
1491config SERIAL_MVEBU_UART
1492	bool "Marvell EBU serial port support"
1493	depends on ARCH_MVEBU || COMPILE_TEST
1494	select SERIAL_CORE
1495	help
1496	  This driver is for Marvell EBU SoC's UART. If you have a machine
1497	  based on the Armada-3700 SoC and wish to use the on-board serial
1498	  port,
1499	  say 'Y' here.
1500	  Otherwise, say 'N'.
1501
1502config SERIAL_MVEBU_CONSOLE
1503	bool "Console on Marvell EBU serial port"
1504	depends on SERIAL_MVEBU_UART
1505	select SERIAL_CORE_CONSOLE
1506	select SERIAL_EARLYCON
1507	default y
1508	help
1509	  Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1510	  (the system console is the device which receives all kernel messages
1511	  and warnings and which allows logins in single user mode)
1512	  Otherwise, say 'N'.
1513
1514config SERIAL_OWL
1515	tristate "Actions Semi Owl serial port support"
1516	depends on ARCH_ACTIONS || COMPILE_TEST
1517	select SERIAL_CORE
1518	help
1519	  This driver is for Actions Semiconductor S500/S900 SoC's UART.
1520	  Say 'Y' here if you wish to use the on-board serial port.
1521	  Otherwise, say 'N'.
1522
1523config SERIAL_OWL_CONSOLE
1524	bool "Console on Actions Semi Owl serial port"
1525	depends on SERIAL_OWL=y
1526	select SERIAL_CORE_CONSOLE
1527	select SERIAL_EARLYCON
1528	default y
1529	help
1530	  Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART
1531	  as the system console.
1532
1533endmenu
1534
1535config SERIAL_MCTRL_GPIO
1536	tristate
1537
1538endif # TTY
1539