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