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