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