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