0001 # SPDX-License-Identifier: GPL-2.0
0002 #
0003 # Serial device configuration
0004 #
0005
0006 menu "Serial drivers"
0007 depends on HAS_IOMEM
0008
0009 config SERIAL_EARLYCON
0010 bool
0011 depends on SERIAL_CORE
0012 help
0013 Support for early consoles with the earlycon parameter. This enables
0014 the console before standard serial driver is probed. The console is
0015 enabled when early_param is processed.
0016
0017 source "drivers/tty/serial/8250/Kconfig"
0018
0019 comment "Non-8250 serial port support"
0020
0021 config SERIAL_AMBA_PL010
0022 tristate "ARM AMBA PL010 serial port support"
0023 depends on ARM_AMBA || COMPILE_TEST
0024 select SERIAL_CORE
0025 help
0026 This selects the ARM(R) AMBA(R) PrimeCell PL010 UART. If you have
0027 an Integrator/AP or Integrator/PP2 platform, or if you have a
0028 Cirrus Logic EP93xx CPU, say Y or M here.
0029
0030 If unsure, say N.
0031
0032 config SERIAL_AMBA_PL010_CONSOLE
0033 bool "Support for console on AMBA serial port"
0034 depends on SERIAL_AMBA_PL010=y
0035 select SERIAL_CORE_CONSOLE
0036 help
0037 Say Y here if you wish to use an AMBA PrimeCell UART as the system
0038 console (the system console is the device which receives all kernel
0039 messages and warnings and which allows logins in single user mode).
0040
0041 Even if you say Y here, the currently visible framebuffer console
0042 (/dev/tty0) will still be used as the system console by default, but
0043 you can alter that using a kernel command line option such as
0044 "console=ttyAM0". (Try "man bootparam" or see the documentation of
0045 your boot loader (lilo or loadlin) about how to pass options to the
0046 kernel at boot time.)
0047
0048 config SERIAL_AMBA_PL011
0049 tristate "ARM AMBA PL011 serial port support"
0050 depends on ARM_AMBA
0051 select SERIAL_CORE
0052 help
0053 This selects the ARM(R) AMBA(R) PrimeCell PL011 UART. If you have
0054 an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M
0055 here.
0056
0057 If unsure, say N.
0058
0059 config SERIAL_AMBA_PL011_CONSOLE
0060 bool "Support for console on AMBA serial port"
0061 depends on SERIAL_AMBA_PL011=y
0062 select SERIAL_CORE_CONSOLE
0063 select SERIAL_EARLYCON
0064 help
0065 Say Y here if you wish to use an AMBA PrimeCell UART as the system
0066 console (the system console is the device which receives all kernel
0067 messages and warnings and which allows logins in single user mode).
0068
0069 Even if you say Y here, the currently visible framebuffer console
0070 (/dev/tty0) will still be used as the system console by default, but
0071 you can alter that using a kernel command line option such as
0072 "console=ttyAMA0". (Try "man bootparam" or see the documentation of
0073 your boot loader (lilo or loadlin) about how to pass options to the
0074 kernel at boot time.)
0075
0076 config SERIAL_EARLYCON_ARM_SEMIHOST
0077 bool "Early console using ARM semihosting"
0078 depends on ARM64 || ARM
0079 select SERIAL_CORE
0080 select SERIAL_CORE_CONSOLE
0081 select SERIAL_EARLYCON
0082 help
0083 Support for early debug console using ARM semihosting. This enables
0084 the console before standard serial driver is probed. This is enabled
0085 with "earlycon=smh" on the kernel command line. The console is
0086 enabled when early_param is processed.
0087
0088 config SERIAL_EARLYCON_RISCV_SBI
0089 bool "Early console using RISC-V SBI"
0090 depends on RISCV_SBI_V01
0091 select SERIAL_CORE
0092 select SERIAL_CORE_CONSOLE
0093 select SERIAL_EARLYCON
0094 help
0095 Support for early debug console using RISC-V SBI. This enables
0096 the console before standard serial driver is probed. This is enabled
0097 with "earlycon=sbi" on the kernel command line. The console is
0098 enabled when early_param is processed.
0099
0100 config SERIAL_SB1250_DUART
0101 tristate "BCM1xxx on-chip DUART serial support"
0102 depends on SIBYTE_SB1xxx_SOC=y
0103 select SERIAL_CORE
0104 default y
0105 help
0106 Support for the asynchronous serial interface (DUART) included in
0107 the BCM1250 and derived System-On-a-Chip (SOC) devices. Note that
0108 the letter D in DUART stands for "dual", which is how the device
0109 is implemented. Depending on the SOC configuration there may be
0110 one or more DUARTs available of which all are handled.
0111
0112 If unsure, say Y. To compile this driver as a module, choose M here:
0113 the module will be called sb1250-duart.
0114
0115 config SERIAL_SB1250_DUART_CONSOLE
0116 bool "Support for console on a BCM1xxx DUART serial port"
0117 depends on SERIAL_SB1250_DUART=y
0118 select SERIAL_CORE_CONSOLE
0119 default y
0120 help
0121 If you say Y here, it will be possible to use a serial port as the
0122 system console (the system console is the device which receives all
0123 kernel messages and warnings and which allows logins in single user
0124 mode).
0125
0126 If unsure, say Y.
0127
0128 config SERIAL_ATMEL
0129 bool "AT91 on-chip serial port support"
0130 depends on ARCH_AT91 || COMPILE_TEST
0131 select SERIAL_CORE
0132 select SERIAL_MCTRL_GPIO if GPIOLIB
0133 select MFD_AT91_USART
0134 help
0135 This enables the driver for the on-chip UARTs of the Atmel
0136 AT91 processors.
0137
0138 config SERIAL_ATMEL_CONSOLE
0139 bool "Support for console on AT91 serial port"
0140 depends on SERIAL_ATMEL=y
0141 select SERIAL_CORE_CONSOLE
0142 select SERIAL_EARLYCON
0143 help
0144 Say Y here if you wish to use an on-chip UART on a Atmel
0145 AT91 processor as the system console (the system
0146 console is the device which receives all kernel messages and
0147 warnings and which allows logins in single user mode).
0148
0149 config SERIAL_ATMEL_PDC
0150 bool "Support DMA transfers on AT91 serial port"
0151 depends on SERIAL_ATMEL
0152 default y
0153 help
0154 Say Y here if you wish to use the PDC to do DMA transfers to
0155 and from the Atmel AT91 serial port. In order to
0156 actually use DMA transfers, make sure that the use_dma_tx
0157 and use_dma_rx members in the atmel_uart_data struct is set
0158 appropriately for each port.
0159
0160 Note that break and error handling currently doesn't work
0161 properly when DMA is enabled. Make sure that ports where
0162 this matters don't use DMA.
0163
0164 config SERIAL_ATMEL_TTYAT
0165 bool "Install as device ttyATn instead of ttySn"
0166 depends on SERIAL_ATMEL=y
0167 help
0168 Say Y here if you wish to have the internal AT91 UARTs
0169 appear as /dev/ttyATn (major 204, minor starting at 154)
0170 instead of the normal /dev/ttySn (major 4, minor starting at
0171 64). This is necessary if you also want other UARTs, such as
0172 external 8250/16C550 compatible UARTs.
0173 The ttySn nodes are legally reserved for the 8250 serial driver
0174 but are often misused by other serial drivers.
0175
0176 To use this, you should create suitable ttyATn device nodes in
0177 /dev/, and pass "console=ttyATn" to the kernel.
0178
0179 Say Y if you have an external 8250/16C550 UART. If unsure, say N.
0180
0181 config SERIAL_KGDB_NMI
0182 bool "Serial console over KGDB NMI debugger port"
0183 depends on KGDB_SERIAL_CONSOLE
0184 help
0185 This special driver allows you to temporary use NMI debugger port
0186 as a normal console (assuming that the port is attached to KGDB).
0187
0188 Unlike KDB's disable_nmi command, with this driver you are always
0189 able to go back to the debugger using KGDB escape sequence ($3#33).
0190 This is because this console driver processes the input in NMI
0191 context, and thus is able to intercept the magic sequence.
0192
0193 Note that since the console interprets input and uses polling
0194 communication methods, for things like PPP you still must fully
0195 detach debugger port from the KGDB NMI (i.e. disable_nmi), and
0196 use raw console.
0197
0198 If unsure, say N.
0199
0200 config SERIAL_MESON
0201 tristate "Meson serial port support"
0202 depends on ARCH_MESON || COMPILE_TEST
0203 select SERIAL_CORE
0204 help
0205 This enables the driver for the on-chip UARTs of the Amlogic
0206 MesonX processors.
0207
0208 config SERIAL_MESON_CONSOLE
0209 bool "Support for console on meson"
0210 depends on SERIAL_MESON
0211 select SERIAL_CORE_CONSOLE
0212 select SERIAL_EARLYCON
0213 help
0214 Say Y here if you wish to use a Amlogic MesonX UART as the
0215 system console (the system console is the device which
0216 receives all kernel messages and warnings and which allows
0217 logins in single user mode) as /dev/ttyAMLx.
0218
0219 config SERIAL_CLPS711X
0220 tristate "CLPS711X serial port support"
0221 depends on ARCH_CLPS711X || COMPILE_TEST
0222 select SERIAL_CORE
0223 select SERIAL_MCTRL_GPIO if GPIOLIB
0224 help
0225 This enables the driver for the on-chip UARTs of the Cirrus
0226 Logic EP711x/EP721x/EP731x processors.
0227
0228 config SERIAL_CLPS711X_CONSOLE
0229 bool "Support for console on CLPS711X serial port"
0230 depends on SERIAL_CLPS711X=y
0231 select SERIAL_CORE_CONSOLE
0232 help
0233 Even if you say Y here, the currently visible virtual console
0234 (/dev/tty0) will still be used as the system console by default, but
0235 you can alter that using a kernel command line option such as
0236 "console=ttyCL1".
0237
0238 config SERIAL_SAMSUNG
0239 tristate "Samsung SoC serial support"
0240 depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || ARCH_APPLE || ARCH_ARTPEC || COMPILE_TEST
0241 select SERIAL_CORE
0242 help
0243 Support for the on-chip UARTs on the Samsung
0244 S3C24xx/S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing
0245 /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of
0246 these ports, depending on how the serial port pins are configured.
0247 Choose Y/M here only if you build for such SoC.
0248
0249 config SERIAL_SAMSUNG_UARTS_4
0250 bool
0251 depends on SERIAL_SAMSUNG
0252 default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442)
0253 help
0254 Internal node for the common case of 4 Samsung compatible UARTs
0255
0256 config SERIAL_SAMSUNG_UARTS
0257 int
0258 depends on SERIAL_SAMSUNG
0259 default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416
0260 default 3
0261 help
0262 Select the number of available UART ports for the Samsung S3C
0263 serial driver
0264
0265 config SERIAL_SAMSUNG_CONSOLE
0266 bool "Support for console on Samsung SoC serial port"
0267 depends on SERIAL_SAMSUNG
0268 select SERIAL_CORE_CONSOLE
0269 select SERIAL_EARLYCON
0270 help
0271 Allow selection of the S3C24XX on-board serial ports for use as
0272 an virtual console.
0273
0274 Even if you say Y here, the currently visible virtual console
0275 (/dev/tty0) will still be used as the system console by default, but
0276 you can alter that using a kernel command line option such as
0277 "console=ttySACx". (Try "man bootparam" or see the documentation of
0278 your boot loader about how to pass options to the kernel at
0279 boot time.)
0280
0281 config SERIAL_TEGRA
0282 tristate "NVIDIA Tegra20/30 SoC serial controller"
0283 depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST
0284 select SERIAL_CORE
0285 help
0286 Support for the on-chip UARTs on the NVIDIA Tegra series SOCs
0287 providing /dev/ttyTHS0, 1, 2, 3 and 4 (note, some machines may not
0288 provide all of these ports, depending on how the serial port
0289 are enabled). This driver uses the APB DMA to achieve higher baudrate
0290 and better performance.
0291
0292 config SERIAL_TEGRA_TCU
0293 tristate "NVIDIA Tegra Combined UART"
0294 depends on MAILBOX
0295 depends on (ARCH_TEGRA && TEGRA_HSP_MBOX) || COMPILE_TEST
0296 select SERIAL_CORE
0297 help
0298 Support for the mailbox-based TCU (Tegra Combined UART) serial port.
0299 TCU is a virtual serial port that allows multiplexing multiple data
0300 streams into a single hardware serial port.
0301
0302 config SERIAL_TEGRA_TCU_CONSOLE
0303 bool "Support for console on a Tegra TCU serial port"
0304 depends on SERIAL_TEGRA_TCU=y
0305 select SERIAL_CORE_CONSOLE
0306 default y
0307 help
0308 If you say Y here, it will be possible to use a the Tegra TCU as the
0309 system console (the system console is the device which receives all
0310 kernel messages and warnings and which allows logins in single user
0311 mode).
0312
0313 If unsure, say Y.
0314
0315 config SERIAL_MAX3100
0316 tristate "MAX3100 support"
0317 depends on SPI
0318 select SERIAL_CORE
0319 help
0320 MAX3100 chip support
0321
0322 config SERIAL_MAX310X
0323 tristate "MAX310X support"
0324 depends on SPI_MASTER
0325 select SERIAL_CORE
0326 select REGMAP_SPI if SPI_MASTER
0327 select REGMAP_I2C if I2C
0328 help
0329 This selects support for an advanced UART from Maxim (Dallas).
0330 Supported ICs are MAX3107, MAX3108, MAX3109, MAX14830.
0331 Each IC contains 128 words each of receive and transmit FIFO
0332 that can be controlled through I2C or high-speed SPI.
0333
0334 Say Y here if you want to support this ICs.
0335
0336 config SERIAL_DZ
0337 bool "DECstation DZ serial driver"
0338 depends on MACH_DECSTATION && 32BIT
0339 select SERIAL_CORE
0340 default y
0341 help
0342 DZ11-family serial controllers for DECstations and VAXstations,
0343 including the DC7085, M7814, and M7819.
0344
0345 config SERIAL_DZ_CONSOLE
0346 bool "Support console on DECstation DZ serial driver"
0347 depends on SERIAL_DZ=y
0348 select SERIAL_CORE_CONSOLE
0349 default y
0350 help
0351 If you say Y here, it will be possible to use a serial port as the
0352 system console (the system console is the device which receives all
0353 kernel messages and warnings and which allows logins in single user
0354 mode).
0355
0356 Note that the firmware uses ttyS3 as the serial console on
0357 DECstations that use this driver.
0358
0359 If unsure, say Y.
0360
0361 config SERIAL_ZS
0362 tristate "DECstation Z85C30 serial support"
0363 depends on MACH_DECSTATION
0364 select SERIAL_CORE
0365 default y
0366 help
0367 Support for the Zilog 85C350 serial communications controller used
0368 for serial ports in newer DECstation systems. These include the
0369 DECsystem 5900 and all models of the DECstation and DECsystem 5000
0370 systems except from model 200.
0371
0372 If unsure, say Y. To compile this driver as a module, choose M here:
0373 the module will be called zs.
0374
0375 config SERIAL_ZS_CONSOLE
0376 bool "Support for console on a DECstation Z85C30 serial port"
0377 depends on SERIAL_ZS=y
0378 select SERIAL_CORE_CONSOLE
0379 default y
0380 help
0381 If you say Y here, it will be possible to use a serial port as the
0382 system console (the system console is the device which receives all
0383 kernel messages and warnings and which allows logins in single user
0384 mode).
0385
0386 Note that the firmware uses ttyS1 as the serial console on the
0387 Maxine and ttyS3 on the others using this driver.
0388
0389 If unsure, say Y.
0390
0391 config SERIAL_21285
0392 tristate "DC21285 serial port support"
0393 depends on FOOTBRIDGE
0394 select SERIAL_CORE
0395 help
0396 If you have a machine based on a 21285 (Footbridge) StrongARM(R)/
0397 PCI bridge you can enable its onboard serial port by enabling this
0398 option.
0399
0400 config SERIAL_21285_CONSOLE
0401 bool "Console on DC21285 serial port"
0402 depends on SERIAL_21285=y
0403 select SERIAL_CORE_CONSOLE
0404 help
0405 If you have enabled the serial port on the 21285 footbridge you can
0406 make it the console by answering Y to this option.
0407
0408 Even if you say Y here, the currently visible virtual console
0409 (/dev/tty0) will still be used as the system console by default, but
0410 you can alter that using a kernel command line option such as
0411 "console=ttyFB". (Try "man bootparam" or see the documentation of
0412 your boot loader (lilo or loadlin) about how to pass options to the
0413 kernel at boot time.)
0414
0415 config SERIAL_PXA
0416 bool "PXA serial port support (DEPRECATED)"
0417 depends on ARCH_PXA || ARCH_MMP
0418 select SERIAL_CORE
0419 select SERIAL_8250_PXA if SERIAL_8250=y
0420 select SERIAL_PXA_NON8250 if !SERIAL_8250=y
0421 help
0422 If you have a machine based on an Intel XScale PXA2xx CPU you
0423 can enable its onboard serial ports by enabling this option.
0424
0425 Unless you have a specific need, you should use SERIAL_8250_PXA
0426 instead of this.
0427
0428 config SERIAL_PXA_NON8250
0429 bool
0430 depends on !SERIAL_8250
0431
0432 config SERIAL_PXA_CONSOLE
0433 bool "Console on PXA serial port (DEPRECATED)"
0434 depends on SERIAL_PXA
0435 select SERIAL_CORE_CONSOLE
0436 select SERIAL_8250_CONSOLE if SERIAL_8250=y
0437 help
0438 If you have enabled the serial port on the Intel XScale PXA
0439 CPU you can make it the console by answering Y to this option.
0440
0441 Even if you say Y here, the currently visible virtual console
0442 (/dev/tty0) will still be used as the system console by default, but
0443 you can alter that using a kernel command line option such as
0444 "console=ttySA0". (Try "man bootparam" or see the documentation of
0445 your boot loader (lilo or loadlin) about how to pass options to the
0446 kernel at boot time.)
0447
0448 Unless you have a specific need, you should use SERIAL_8250_PXA
0449 and SERIAL_8250_CONSOLE instead of this.
0450
0451 config SERIAL_SA1100
0452 bool "SA1100 serial port support"
0453 depends on ARCH_SA1100
0454 select SERIAL_CORE
0455 select SERIAL_MCTRL_GPIO if GPIOLIB
0456 help
0457 If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you
0458 can enable its onboard serial port by enabling this option.
0459 Please read <file:Documentation/arm/sa1100/serial_uart.rst> for further
0460 info.
0461
0462 config SERIAL_SA1100_CONSOLE
0463 bool "Console on SA1100 serial port"
0464 depends on SERIAL_SA1100
0465 select SERIAL_CORE_CONSOLE
0466 help
0467 If you have enabled the serial port on the SA1100/SA1110 StrongARM
0468 CPU you can make it the console by answering Y to this option.
0469
0470 Even if you say Y here, the currently visible virtual console
0471 (/dev/tty0) will still be used as the system console by default, but
0472 you can alter that using a kernel command line option such as
0473 "console=ttySA0". (Try "man bootparam" or see the documentation of
0474 your boot loader (lilo or loadlin) about how to pass options to the
0475 kernel at boot time.)
0476
0477 config SERIAL_IMX
0478 tristate "IMX serial port support"
0479 depends on ARCH_MXC || COMPILE_TEST
0480 select SERIAL_CORE
0481 select RATIONAL
0482 select SERIAL_MCTRL_GPIO if GPIOLIB
0483 help
0484 If you have a machine based on a Motorola IMX CPU you
0485 can enable its onboard serial port by enabling this option.
0486
0487 config SERIAL_IMX_CONSOLE
0488 tristate "Console on IMX serial port"
0489 depends on SERIAL_IMX
0490 select SERIAL_CORE_CONSOLE
0491 help
0492 If you have enabled the serial port on the Freescale IMX
0493 CPU you can make it the console by answering Y/M to this option.
0494
0495 Even if you say Y/M here, the currently visible virtual console
0496 (/dev/tty0) will still be used as the system console by default, but
0497 you can alter that using a kernel command line option such as
0498 "console=ttymxc0". (Try "man bootparam" or see the documentation of
0499 your bootloader about how to pass options to the kernel at boot time.)
0500
0501 config SERIAL_IMX_EARLYCON
0502 bool "Earlycon on IMX serial port"
0503 depends on ARCH_MXC || COMPILE_TEST
0504 depends on OF
0505 select SERIAL_CORE
0506 select SERIAL_EARLYCON
0507 select SERIAL_CORE_CONSOLE
0508 default y if SERIAL_IMX_CONSOLE
0509 help
0510 If you have enabled the earlycon on the Freescale IMX
0511 CPU you can make it the earlycon by answering Y to this option.
0512
0513 config SERIAL_UARTLITE
0514 tristate "Xilinx uartlite serial port support"
0515 depends on HAS_IOMEM
0516 select SERIAL_CORE
0517 help
0518 Say Y here if you want to use the Xilinx uartlite serial controller.
0519
0520 To compile this driver as a module, choose M here: the
0521 module will be called uartlite.
0522
0523 config SERIAL_UARTLITE_CONSOLE
0524 bool "Support for console on Xilinx uartlite serial port"
0525 depends on SERIAL_UARTLITE=y
0526 select SERIAL_CORE_CONSOLE
0527 select SERIAL_EARLYCON
0528 help
0529 Say Y here if you wish to use a Xilinx uartlite as the system
0530 console (the system console is the device which receives all kernel
0531 messages and warnings and which allows logins in single user mode).
0532
0533 config SERIAL_UARTLITE_NR_UARTS
0534 int "Maximum number of uartlite serial ports"
0535 depends on SERIAL_UARTLITE
0536 range 1 256
0537 default 1
0538 help
0539 Set this to the number of uartlites in your system, or the number
0540 you think you might implement.
0541
0542 config SERIAL_SUNCORE
0543 bool
0544 depends on SPARC
0545 select SERIAL_CORE
0546 select SERIAL_CORE_CONSOLE
0547 default y
0548
0549 config SERIAL_SUNZILOG
0550 tristate "Sun Zilog8530 serial support"
0551 depends on SPARC
0552 help
0553 This driver supports the Zilog8530 serial ports found on many Sparc
0554 systems. Say Y or M if you want to be able to these serial ports.
0555
0556 config SERIAL_SUNZILOG_CONSOLE
0557 bool "Console on Sun Zilog8530 serial port"
0558 depends on SERIAL_SUNZILOG=y
0559 help
0560 If you would like to be able to use the Zilog8530 serial port
0561 on your Sparc system as the console, you can do so by answering
0562 Y to this option.
0563
0564 config SERIAL_SUNSU
0565 tristate "Sun SU serial support"
0566 depends on SPARC && PCI
0567 help
0568 This driver supports the 8250 serial ports that run the keyboard and
0569 mouse on (PCI) UltraSPARC systems. Say Y or M if you want to be able
0570 to these serial ports.
0571
0572 config SERIAL_SUNSU_CONSOLE
0573 bool "Console on Sun SU serial port"
0574 depends on SERIAL_SUNSU=y
0575 help
0576 If you would like to be able to use the SU serial port
0577 on your Sparc system as the console, you can do so by answering
0578 Y to this option.
0579
0580 config SERIAL_MUX
0581 tristate "Serial MUX support"
0582 depends on GSC
0583 select SERIAL_CORE
0584 default y
0585 help
0586 Saying Y here will enable the hardware MUX serial driver for
0587 the Nova, K class systems and D class with a 'remote control card'.
0588 The hardware MUX is not 8250/16550 compatible therefore the
0589 /dev/ttyB0 device is shared between the Serial MUX and the PDC
0590 software console. The following steps need to be completed to use
0591 the Serial MUX:
0592
0593 1. create the device entry (mknod /dev/ttyB0 c 11 0)
0594 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
0595 3. Add device ttyB0 to /etc/securetty (if you want to log on as
0596 root on this console.)
0597 4. Change the kernel command console parameter to: console=ttyB0
0598
0599 config SERIAL_MUX_CONSOLE
0600 bool "Support for console on serial MUX"
0601 depends on SERIAL_MUX=y
0602 select SERIAL_CORE_CONSOLE
0603 default y
0604
0605 config PDC_CONSOLE
0606 bool "PDC software console support"
0607 depends on PARISC && !SERIAL_MUX && VT
0608 help
0609 Saying Y here will enable the software based PDC console to be
0610 used as the system console. This is useful for machines in
0611 which the hardware based console has not been written yet. The
0612 following steps must be completed to use the PDC console:
0613
0614 1. create the device entry (mknod /dev/ttyB0 c 11 0)
0615 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0
0616 3. Add device ttyB0 to /etc/securetty (if you want to log on as
0617 root on this console.)
0618 4. Change the kernel command console parameter to: console=ttyB0
0619
0620 config SERIAL_SUNSAB
0621 tristate "Sun Siemens SAB82532 serial support"
0622 depends on SPARC && PCI
0623 help
0624 This driver supports the Siemens SAB82532 DUSCC serial ports on newer
0625 (PCI) UltraSPARC systems. Say Y or M if you want to be able to these
0626 serial ports.
0627
0628 config SERIAL_SUNSAB_CONSOLE
0629 bool "Console on Sun Siemens SAB82532 serial port"
0630 depends on SERIAL_SUNSAB=y
0631 help
0632 If you would like to be able to use the SAB82532 serial port
0633 on your Sparc system as the console, you can do so by answering
0634 Y to this option.
0635
0636 config SERIAL_SUNHV
0637 bool "Sun4v Hypervisor Console support"
0638 depends on SPARC64
0639 help
0640 This driver supports the console device found on SUN4V Sparc
0641 systems. Say Y if you want to be able to use this device.
0642
0643 config SERIAL_IP22_ZILOG
0644 tristate "SGI Zilog8530 serial support"
0645 depends on SGI_HAS_ZILOG
0646 select SERIAL_CORE
0647 help
0648 This driver supports the Zilog8530 serial ports found on SGI
0649 systems. Say Y or M if you want to be able to these serial ports.
0650
0651 config SERIAL_IP22_ZILOG_CONSOLE
0652 bool "Console on SGI Zilog8530 serial port"
0653 depends on SERIAL_IP22_ZILOG=y
0654 select SERIAL_CORE_CONSOLE
0655
0656 config SERIAL_SH_SCI
0657 tristate "SuperH SCI(F) serial port support"
0658 depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
0659 select SERIAL_CORE
0660 select SERIAL_MCTRL_GPIO if GPIOLIB
0661
0662 config SERIAL_SH_SCI_NR_UARTS
0663 int "Maximum number of SCI(F) serial ports" if EXPERT
0664 range 1 64 if 64BIT
0665 range 1 32 if !64BIT
0666 depends on SERIAL_SH_SCI
0667 default "10" if SUPERH
0668 default "18" if ARCH_RENESAS
0669 default "2"
0670
0671 config SERIAL_SH_SCI_CONSOLE
0672 bool "Support for console on SuperH SCI(F)" if EXPERT
0673 depends on SERIAL_SH_SCI=y
0674 select SERIAL_CORE_CONSOLE
0675 default y
0676
0677 config SERIAL_SH_SCI_EARLYCON
0678 bool "Support for early console on SuperH SCI(F)" if EXPERT
0679 depends on SERIAL_SH_SCI=y
0680 select SERIAL_CORE_CONSOLE
0681 select SERIAL_EARLYCON
0682 default ARCH_RENESAS
0683
0684 config SERIAL_SH_SCI_DMA
0685 bool "DMA support" if EXPERT
0686 depends on SERIAL_SH_SCI && DMA_ENGINE
0687 default ARCH_RENESAS
0688
0689 config SERIAL_HS_LPC32XX
0690 tristate "LPC32XX high speed serial port support"
0691 depends on ARCH_LPC32XX || COMPILE_TEST
0692 depends on OF
0693 select SERIAL_CORE
0694 help
0695 Support for the LPC32XX high speed serial ports (up to 900kbps).
0696 Those are UARTs completely different from the Standard UARTs on the
0697 LPC32XX SoC.
0698 Choose M or Y here to build this driver.
0699
0700 config SERIAL_HS_LPC32XX_CONSOLE
0701 bool "Enable LPC32XX high speed UART serial console"
0702 depends on SERIAL_HS_LPC32XX=y
0703 select SERIAL_CORE_CONSOLE
0704 help
0705 If you would like to be able to use one of the high speed serial
0706 ports on the LPC32XX as the console, you can do so by answering
0707 Y to this option.
0708
0709 config SERIAL_CORE
0710 tristate
0711
0712 config SERIAL_CORE_CONSOLE
0713 bool
0714
0715 config CONSOLE_POLL
0716 bool
0717
0718 config SERIAL_MCF
0719 bool "Coldfire serial support"
0720 depends on COLDFIRE
0721 select SERIAL_CORE
0722 help
0723 This serial driver supports the Freescale Coldfire serial ports.
0724
0725 config SERIAL_MCF_BAUDRATE
0726 int "Default baudrate for Coldfire serial ports"
0727 depends on SERIAL_MCF
0728 default 19200
0729 help
0730 This setting lets you define what the default baudrate is for the
0731 ColdFire serial ports. The usual default varies from board to board,
0732 and this setting is a way of catering for that.
0733
0734 config SERIAL_MCF_CONSOLE
0735 bool "Coldfire serial console support"
0736 depends on SERIAL_MCF
0737 select SERIAL_CORE_CONSOLE
0738 help
0739 Enable a ColdFire internal serial port to be the system console.
0740
0741 config SERIAL_PMACZILOG
0742 tristate "Mac or PowerMac z85c30 ESCC support"
0743 depends on (M68K && MAC) || PPC_PMAC
0744 select SERIAL_CORE
0745 help
0746 This driver supports the Zilog z85C30 serial ports found on
0747 (Power)Mac machines.
0748 Say Y or M if you want to be able to these serial ports.
0749
0750 config SERIAL_PMACZILOG_TTYS
0751 bool "Use ttySn device nodes for Zilog z85c30"
0752 depends on SERIAL_PMACZILOG
0753 help
0754 The pmac_zilog driver for the z85C30 chip on many powermacs
0755 historically used the device numbers for /dev/ttySn. The
0756 8250 serial port driver also uses these numbers, which means
0757 the two drivers being unable to coexist; you could not use
0758 both z85C30 and 8250 type ports at the same time.
0759
0760 If this option is not selected, the pmac_zilog driver will
0761 use the device numbers allocated for /dev/ttyPZn. This allows
0762 the pmac_zilog and 8250 drivers to co-exist, but may cause
0763 existing userspace setups to break. Programs that need to
0764 access the built-in serial ports on powermacs will need to
0765 be reconfigured to use /dev/ttyPZn instead of /dev/ttySn.
0766
0767 If you enable this option, any z85c30 ports in the system will
0768 be registered as ttyS0 onwards as in the past, and you will be
0769 unable to use the 8250 module for PCMCIA or other 16C550-style
0770 UARTs.
0771
0772 Say N unless you need the z85c30 ports on your (Power)Mac
0773 to appear as /dev/ttySn.
0774
0775 config SERIAL_PMACZILOG_CONSOLE
0776 bool "Console on Mac or PowerMac z85c30 serial port"
0777 depends on SERIAL_PMACZILOG=y
0778 select SERIAL_CORE_CONSOLE
0779 help
0780 If you would like to be able to use the z85c30 serial port
0781 on your (Power)Mac as the console, you can do so by answering
0782 Y to this option.
0783
0784 config SERIAL_CPM
0785 tristate "CPM SCC/SMC serial port support"
0786 depends on CPM2 || CPM1 || (PPC32 && COMPILE_TEST)
0787 select SERIAL_CORE
0788 help
0789 This driver supports the SCC and SMC serial ports on Motorola
0790 embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx)
0791
0792 config SERIAL_CPM_CONSOLE
0793 bool "Support for console on CPM SCC/SMC serial port"
0794 depends on SERIAL_CPM=y
0795 select SERIAL_CORE_CONSOLE
0796 help
0797 Say Y here if you wish to use a SCC or SMC CPM UART as the system
0798 console (the system console is the device which receives all kernel
0799 messages and warnings and which allows logins in single user mode).
0800
0801 Even if you say Y here, the currently visible framebuffer console
0802 (/dev/tty0) will still be used as the system console by default, but
0803 you can alter that using a kernel command line option such as
0804 "console=ttyCPM0". (Try "man bootparam" or see the documentation of
0805 your boot loader (lilo or loadlin) about how to pass options to the
0806 kernel at boot time.)
0807
0808 config SERIAL_PIC32
0809 tristate "Microchip PIC32 serial support"
0810 depends on MACH_PIC32 || (MIPS && COMPILE_TEST)
0811 select SERIAL_CORE
0812 help
0813 If you have a PIC32, this driver supports the serial ports.
0814
0815 Say Y or M to use PIC32 serial ports, otherwise say N. Note that
0816 to use a serial port as a console, this must be included in kernel and
0817 not as a module.
0818
0819 config SERIAL_PIC32_CONSOLE
0820 bool "PIC32 serial console support"
0821 depends on SERIAL_PIC32=y
0822 select SERIAL_CORE_CONSOLE
0823 help
0824 If you have a PIC32, this driver supports the putting a console on one
0825 of the serial ports.
0826
0827 Say Y to use the PIC32 console, otherwise say N.
0828
0829 config SERIAL_MPC52xx
0830 tristate "Freescale MPC52xx/MPC512x family PSC serial support"
0831 depends on PPC_MPC52xx || PPC_MPC512x
0832 select SERIAL_CORE
0833 help
0834 This driver supports MPC52xx and MPC512x PSC serial ports. If you would
0835 like to use them, you must answer Y or M to this option. Note that
0836 for use as console, it must be included in kernel and not as a
0837 module.
0838
0839 config SERIAL_MPC52xx_CONSOLE
0840 bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port"
0841 depends on SERIAL_MPC52xx=y
0842 select SERIAL_CORE_CONSOLE
0843 help
0844 Select this options if you'd like to use one of the PSC serial port
0845 of the Freescale MPC52xx family as a console.
0846
0847 config SERIAL_MPC52xx_CONSOLE_BAUD
0848 int "Freescale MPC52xx/MPC512x family PSC serial port baud"
0849 depends on SERIAL_MPC52xx_CONSOLE=y
0850 default "9600"
0851 help
0852 Select the MPC52xx console baud rate.
0853 This value is only used if the bootloader doesn't pass in the
0854 console baudrate
0855
0856 config SERIAL_ICOM
0857 tristate "IBM Multiport Serial Adapter"
0858 depends on PCI
0859 depends on PPC_PSERIES || COMPILE_TEST
0860 select SERIAL_CORE
0861 select FW_LOADER
0862 help
0863 This driver is for a family of multiport serial adapters
0864 including 2 port RVX, 2 port internal modem, 4 port internal
0865 modem and a split 1 port RVX and 1 port internal modem.
0866
0867 This driver can also be built as a module. If so, the module
0868 will be called icom.
0869
0870 config SERIAL_TXX9
0871 bool "TMPTX39XX/49XX SIO support"
0872 depends on HAS_TXX9_SERIAL
0873 select SERIAL_CORE
0874 default y
0875
0876 config HAS_TXX9_SERIAL
0877 bool
0878
0879 config SERIAL_TXX9_NR_UARTS
0880 int "Maximum number of TMPTX39XX/49XX SIO ports"
0881 depends on SERIAL_TXX9
0882 default "6"
0883
0884 config SERIAL_TXX9_CONSOLE
0885 bool "TMPTX39XX/49XX SIO Console support"
0886 depends on SERIAL_TXX9=y
0887 select SERIAL_CORE_CONSOLE
0888
0889 config SERIAL_TXX9_STDSERIAL
0890 bool "TX39XX/49XX SIO act as standard serial"
0891 depends on !SERIAL_8250 && SERIAL_TXX9
0892
0893 config SERIAL_JSM
0894 tristate "Digi International NEO and Classic PCI Support"
0895 depends on PCI
0896 select SERIAL_CORE
0897 help
0898 This is a driver for Digi International's Neo and Classic series
0899 of cards which provide multiple serial ports. You would need
0900 something like this to connect more than two modems to your Linux
0901 box, for instance in order to become a dial-in server. This driver
0902 supports PCI boards only.
0903
0904 If you have a card like this, say Y here, otherwise say N.
0905
0906 To compile this driver as a module, choose M here: the
0907 module will be called jsm.
0908
0909 config SERIAL_MSM
0910 tristate "MSM on-chip serial port support"
0911 depends on ARCH_QCOM || COMPILE_TEST
0912 select SERIAL_CORE
0913
0914 config SERIAL_MSM_CONSOLE
0915 bool "MSM serial console support"
0916 depends on SERIAL_MSM=y
0917 select SERIAL_CORE_CONSOLE
0918 select SERIAL_EARLYCON
0919
0920 config SERIAL_QCOM_GENI
0921 tristate "QCOM on-chip GENI based serial port support"
0922 depends on ARCH_QCOM || COMPILE_TEST
0923 depends on QCOM_GENI_SE
0924 select SERIAL_CORE
0925
0926 config SERIAL_QCOM_GENI_CONSOLE
0927 bool "QCOM GENI Serial Console support"
0928 depends on SERIAL_QCOM_GENI
0929 select SERIAL_CORE_CONSOLE
0930 select SERIAL_EARLYCON
0931 help
0932 Serial console driver for Qualcomm Technologies Inc's GENI based
0933 QUP hardware.
0934
0935 config SERIAL_VT8500
0936 bool "VIA VT8500 on-chip serial port support"
0937 depends on ARCH_VT8500 || COMPILE_TEST
0938 select SERIAL_CORE
0939
0940 config SERIAL_VT8500_CONSOLE
0941 bool "VIA VT8500 serial console support"
0942 depends on SERIAL_VT8500=y
0943 select SERIAL_CORE_CONSOLE
0944
0945 config SERIAL_OMAP
0946 tristate "OMAP serial port support"
0947 depends on (ARCH_OMAP2PLUS && !SERIAL_8250_OMAP) || COMPILE_TEST
0948 select SERIAL_CORE
0949 help
0950 If you have a machine based on an Texas Instruments OMAP CPU you
0951 can enable its onboard serial ports by enabling this option.
0952
0953 By enabling this option you take advantage of dma feature available
0954 with the omap-serial driver. DMA support can be enabled from platform
0955 data.
0956
0957 config SERIAL_OMAP_CONSOLE
0958 bool "Console on OMAP serial port"
0959 depends on SERIAL_OMAP=y
0960 select SERIAL_CORE_CONSOLE
0961 help
0962 Select this option if you would like to use omap serial port as
0963 console.
0964
0965 Even if you say Y here, the currently visible virtual console
0966 (/dev/tty0) will still be used as the system console by default, but
0967 you can alter that using a kernel command line option such as
0968 "console=ttyOx". (Try "man bootparam" or see the documentation of
0969 your boot loader about how to pass options to the kernel at
0970 boot time.)
0971
0972 config SERIAL_SIFIVE
0973 tristate "SiFive UART support"
0974 depends on OF
0975 select SERIAL_CORE
0976 help
0977 Select this option if you are building a kernel for a device that
0978 contains a SiFive UART IP block. This type of UART is present on
0979 SiFive FU540 SoCs, among others.
0980
0981 config SERIAL_SIFIVE_CONSOLE
0982 bool "Console on SiFive UART"
0983 depends on SERIAL_SIFIVE=y
0984 select SERIAL_CORE_CONSOLE
0985 select SERIAL_EARLYCON
0986 help
0987 Select this option if you would like to use a SiFive UART as the
0988 system console.
0989
0990 Even if you say Y here, the currently visible virtual console
0991 (/dev/tty0) will still be used as the system console by default, but
0992 you can alter that using a kernel command line option such as
0993 "console=ttySIFx". (Try "man bootparam" or see the documentation of
0994 your boot loader about how to pass options to the kernel at
0995 boot time.)
0996
0997 config SERIAL_LANTIQ
0998 tristate "Lantiq serial driver"
0999 depends on (LANTIQ || X86) || COMPILE_TEST
1000 select SERIAL_CORE
1001 help
1002 Support for UART on Lantiq and Intel SoCs.
1003 To compile this driver as a module, select M here. The
1004 module will be called lantiq.
1005
1006 config SERIAL_LANTIQ_CONSOLE
1007 bool "Console on Lantiq UART"
1008 depends on SERIAL_LANTIQ=y
1009 select SERIAL_CORE_CONSOLE
1010 select SERIAL_EARLYCON
1011 help
1012 Select this option if you would like to use a Lantiq UART as the
1013 system console.
1014
1015 config SERIAL_QE
1016 tristate "Freescale QUICC Engine serial port support"
1017 depends on QUICC_ENGINE
1018 select SERIAL_CORE
1019 select FW_LOADER
1020 help
1021 This driver supports the QE serial ports on Freescale embedded
1022 PowerPC that contain a QUICC Engine.
1023
1024 config SERIAL_SCCNXP
1025 tristate "SCCNXP serial port support"
1026 select SERIAL_CORE
1027 help
1028 This selects support for an advanced UART from NXP (Philips).
1029 Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92,
1030 SC28L202, SCC68681 and SCC68692.
1031
1032 config SERIAL_SCCNXP_CONSOLE
1033 bool "Console on SCCNXP serial port"
1034 depends on SERIAL_SCCNXP=y
1035 select SERIAL_CORE_CONSOLE
1036 help
1037 Support for console on SCCNXP serial ports.
1038
1039 config SERIAL_SC16IS7XX_CORE
1040 tristate
1041
1042 config SERIAL_SC16IS7XX
1043 tristate "SC16IS7xx serial support"
1044 select SERIAL_CORE
1045 depends on (SPI_MASTER && !I2C) || I2C
1046 help
1047 This selects support for SC16IS7xx serial ports.
1048 Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752,
1049 SC16IS760 and SC16IS762. Select supported buses using options below.
1050
1051 config SERIAL_SC16IS7XX_I2C
1052 bool "SC16IS7xx for I2C interface"
1053 depends on SERIAL_SC16IS7XX
1054 depends on I2C
1055 select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1056 select REGMAP_I2C if I2C
1057 default y
1058 help
1059 Enable SC16IS7xx driver on I2C bus,
1060 If required say y, and say n to i2c if not required,
1061 Enabled by default to support oldconfig.
1062 You must select at least one bus for the driver to be built.
1063
1064 config SERIAL_SC16IS7XX_SPI
1065 bool "SC16IS7xx for spi interface"
1066 depends on SERIAL_SC16IS7XX
1067 depends on SPI_MASTER
1068 select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX
1069 select REGMAP_SPI if SPI_MASTER
1070 help
1071 Enable SC16IS7xx driver on SPI bus,
1072 If required say y, and say n to spi if not required,
1073 This is additional support to existing driver.
1074 You must select at least one bus for the driver to be built.
1075
1076 config SERIAL_TIMBERDALE
1077 tristate "Support for timberdale UART"
1078 select SERIAL_CORE
1079 depends on X86_32 || COMPILE_TEST
1080 help
1081 Add support for UART controller on timberdale.
1082
1083 config SERIAL_BCM63XX
1084 tristate "Broadcom BCM63xx/BCM33xx UART support"
1085 select SERIAL_CORE
1086 depends on ARCH_BCM4908 || ARCH_BCMBCA || BCM63XX || BMIPS_GENERIC || COMPILE_TEST
1087 default ARCH_BCM4908 || ARCH_BCMBCA || BCM63XX || BMIPS_GENERIC
1088 help
1089 This enables the driver for the onchip UART core found on
1090 the following chipsets:
1091
1092 BCM33xx (cable modem)
1093 BCM63xx/BCM63xxx (DSL)
1094 BCM68xx (PON)
1095 BCM7xxx (STB) - DOCSIS console
1096
1097 config SERIAL_BCM63XX_CONSOLE
1098 bool "Console on BCM63xx serial port"
1099 depends on SERIAL_BCM63XX=y
1100 select SERIAL_CORE_CONSOLE
1101 select SERIAL_EARLYCON
1102 help
1103 If you have enabled the serial port on the BCM63xx CPU
1104 you can make it the console by answering Y to this option.
1105
1106 config SERIAL_GRLIB_GAISLER_APBUART
1107 tristate "GRLIB APBUART serial support"
1108 depends on OF && SPARC
1109 select SERIAL_CORE
1110 help
1111 Add support for the GRLIB APBUART serial port.
1112
1113 config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE
1114 bool "Console on GRLIB APBUART serial port"
1115 depends on SERIAL_GRLIB_GAISLER_APBUART=y
1116 select SERIAL_CORE_CONSOLE
1117 help
1118 Support for running a console on the GRLIB APBUART
1119
1120 config SERIAL_ALTERA_JTAGUART
1121 tristate "Altera JTAG UART support"
1122 select SERIAL_CORE
1123 help
1124 This driver supports the Altera JTAG UART port.
1125
1126 config SERIAL_ALTERA_JTAGUART_CONSOLE
1127 bool "Altera JTAG UART console support"
1128 depends on SERIAL_ALTERA_JTAGUART=y
1129 select SERIAL_CORE_CONSOLE
1130 select SERIAL_EARLYCON
1131 help
1132 Enable a Altera JTAG UART port to be the system console.
1133
1134 config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS
1135 bool "Bypass output when no connection"
1136 depends on SERIAL_ALTERA_JTAGUART_CONSOLE
1137 select SERIAL_CORE_CONSOLE
1138 help
1139 Bypass console output and keep going even if there is no
1140 JTAG terminal connection with the host.
1141
1142 config SERIAL_ALTERA_UART
1143 tristate "Altera UART support"
1144 select SERIAL_CORE
1145 help
1146 This driver supports the Altera softcore UART port.
1147
1148 config SERIAL_ALTERA_UART_MAXPORTS
1149 int "Maximum number of Altera UART ports"
1150 depends on SERIAL_ALTERA_UART
1151 default 4
1152 help
1153 This setting lets you define the maximum number of the Altera
1154 UART ports. The usual default varies from board to board, and
1155 this setting is a way of catering for that.
1156
1157 config SERIAL_ALTERA_UART_BAUDRATE
1158 int "Default baudrate for Altera UART ports"
1159 depends on SERIAL_ALTERA_UART
1160 default 115200
1161 help
1162 This setting lets you define what the default baudrate is for the
1163 Altera UART ports. The usual default varies from board to board,
1164 and this setting is a way of catering for that.
1165
1166 config SERIAL_ALTERA_UART_CONSOLE
1167 bool "Altera UART console support"
1168 depends on SERIAL_ALTERA_UART=y
1169 select SERIAL_CORE_CONSOLE
1170 select SERIAL_EARLYCON
1171 help
1172 Enable a Altera UART port to be the system console.
1173
1174 config SERIAL_PCH_UART
1175 tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART"
1176 depends on PCI && (X86_32 || MIPS || COMPILE_TEST)
1177 select SERIAL_CORE
1178 help
1179 This driver is for PCH(Platform controller Hub) UART of Intel EG20T
1180 which is an IOH(Input/Output Hub) for x86 embedded processor.
1181 Enabling PCH_DMA, this PCH UART works as DMA mode.
1182
1183 This driver also can be used for LAPIS Semiconductor IOH(Input/
1184 Output Hub), ML7213, ML7223 and ML7831.
1185 ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is
1186 for MP(Media Phone) use and ML7831 IOH is for general purpose use.
1187 ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series.
1188 ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH.
1189
1190 config SERIAL_PCH_UART_CONSOLE
1191 bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH"
1192 depends on SERIAL_PCH_UART=y
1193 select SERIAL_CORE_CONSOLE
1194 help
1195 Say Y here if you wish to use the PCH UART as the system console
1196 (the system console is the device which receives all kernel messages and
1197 warnings and which allows logins in single user mode).
1198
1199 config SERIAL_MXS_AUART
1200 tristate "MXS AUART support"
1201 depends on ARCH_MXS || MACH_ASM9260 || COMPILE_TEST
1202 select SERIAL_CORE
1203 select SERIAL_MCTRL_GPIO if GPIOLIB
1204 help
1205 This driver supports the MXS and Alphascale ASM9260 Application
1206 UART (AUART) port.
1207
1208 config SERIAL_MXS_AUART_CONSOLE
1209 bool "MXS AUART console support"
1210 depends on SERIAL_MXS_AUART=y
1211 select SERIAL_CORE_CONSOLE
1212 help
1213 Enable a MXS AUART port to be the system console.
1214
1215 config SERIAL_XILINX_PS_UART
1216 tristate "Cadence (Xilinx Zynq) UART support"
1217 depends on OF
1218 select SERIAL_CORE
1219 help
1220 This driver supports the Cadence UART. It is found e.g. in Xilinx
1221 Zynq.
1222
1223 config SERIAL_XILINX_PS_UART_CONSOLE
1224 bool "Cadence UART console support"
1225 depends on SERIAL_XILINX_PS_UART=y
1226 select SERIAL_CORE_CONSOLE
1227 select SERIAL_EARLYCON
1228 help
1229 Enable a Cadence UART port to be the system console.
1230
1231 config SERIAL_AR933X
1232 tristate "AR933X serial port support"
1233 depends on (HAVE_CLK && ATH79) || (MIPS && COMPILE_TEST)
1234 select SERIAL_CORE
1235 select SERIAL_MCTRL_GPIO if GPIOLIB
1236 help
1237 If you have an Atheros AR933X SOC based board and want to use the
1238 built-in UART of the SoC, say Y to this option.
1239
1240 To compile this driver as a module, choose M here: the
1241 module will be called ar933x_uart.
1242
1243 config SERIAL_AR933X_CONSOLE
1244 bool "Console on AR933X serial port"
1245 depends on SERIAL_AR933X=y
1246 select SERIAL_CORE_CONSOLE
1247 help
1248 Enable a built-in UART port of the AR933X to be the system console.
1249
1250 config SERIAL_AR933X_NR_UARTS
1251 int "Maximum number of AR933X serial ports"
1252 depends on SERIAL_AR933X
1253 default "2"
1254 help
1255 Set this to the number of serial ports you want the driver
1256 to support.
1257
1258 config SERIAL_MPS2_UART_CONSOLE
1259 bool "MPS2 UART console support"
1260 depends on SERIAL_MPS2_UART
1261 select SERIAL_CORE_CONSOLE
1262 select SERIAL_EARLYCON
1263
1264 config SERIAL_MPS2_UART
1265 bool "MPS2 UART port"
1266 depends on ARCH_MPS2 || COMPILE_TEST
1267 select SERIAL_CORE
1268 help
1269 This driver support the UART ports on ARM MPS2.
1270
1271 config SERIAL_ARC
1272 tristate "ARC UART driver support"
1273 select SERIAL_CORE
1274 help
1275 Driver for on-chip UART for ARC(Synopsys) for the legacy
1276 FPGA Boards (ML50x/ARCAngel4)
1277
1278 config SERIAL_ARC_CONSOLE
1279 bool "Console on ARC UART"
1280 depends on SERIAL_ARC=y
1281 select SERIAL_CORE_CONSOLE
1282 select SERIAL_EARLYCON
1283 help
1284 Enable system Console on ARC UART
1285
1286 config SERIAL_ARC_NR_PORTS
1287 int "Number of ARC UART ports"
1288 depends on SERIAL_ARC
1289 range 1 3
1290 default "1"
1291 help
1292 Set this to the number of serial ports you want the driver
1293 to support.
1294
1295 config SERIAL_RP2
1296 tristate "Comtrol RocketPort EXPRESS/INFINITY support"
1297 depends on PCI
1298 select SERIAL_CORE
1299 help
1300 This driver supports the Comtrol RocketPort EXPRESS and
1301 RocketPort INFINITY families of PCI/PCIe multiport serial adapters.
1302 These adapters use a "RocketPort 2" ASIC that is not compatible
1303 with the original RocketPort driver (CONFIG_ROCKETPORT).
1304
1305 To compile this driver as a module, choose M here: the
1306 module will be called rp2.
1307
1308 If you want to compile this driver into the kernel, say Y here. If
1309 you don't have a suitable RocketPort card installed, say N.
1310
1311 config SERIAL_RP2_NR_UARTS
1312 int "Maximum number of RocketPort EXPRESS/INFINITY ports"
1313 depends on SERIAL_RP2
1314 default "32"
1315 help
1316 If multiple cards are present, the default limit of 32 ports may
1317 need to be increased.
1318
1319 config SERIAL_FSL_LPUART
1320 tristate "Freescale lpuart serial port support"
1321 depends on HAS_DMA
1322 select SERIAL_CORE
1323 help
1324 Support for the on-chip lpuart on some Freescale SOCs.
1325
1326 config SERIAL_FSL_LPUART_CONSOLE
1327 bool "Console on Freescale lpuart serial port"
1328 depends on SERIAL_FSL_LPUART=y
1329 select SERIAL_CORE_CONSOLE
1330 select SERIAL_EARLYCON
1331 help
1332 If you have enabled the lpuart serial port on the Freescale SoCs,
1333 you can make it the console by answering Y to this option.
1334
1335 config SERIAL_FSL_LINFLEXUART
1336 tristate "Freescale LINFlexD UART serial port support"
1337 depends on PRINTK
1338 select SERIAL_CORE
1339 help
1340 Support for the on-chip LINFlexD UART on some Freescale SOCs.
1341
1342 config SERIAL_FSL_LINFLEXUART_CONSOLE
1343 bool "Console on Freescale LINFlexD UART serial port"
1344 depends on SERIAL_FSL_LINFLEXUART=y
1345 select SERIAL_CORE_CONSOLE
1346 select SERIAL_EARLYCON
1347 help
1348 If you have enabled the LINFlexD UART serial port on the Freescale
1349 SoCs, you can make it the console by answering Y to this option.
1350
1351 config SERIAL_CONEXANT_DIGICOLOR
1352 tristate "Conexant Digicolor CX92xxx USART serial port support"
1353 depends on OF
1354 select SERIAL_CORE
1355 help
1356 Support for the on-chip USART on Conexant Digicolor SoCs.
1357
1358 config SERIAL_CONEXANT_DIGICOLOR_CONSOLE
1359 bool "Console on Conexant Digicolor serial port"
1360 depends on SERIAL_CONEXANT_DIGICOLOR=y
1361 select SERIAL_CORE_CONSOLE
1362 help
1363 If you have enabled the USART serial port on Conexant Digicolor
1364 SoCs, you can make it the console by answering Y to this option.
1365
1366 config SERIAL_ST_ASC
1367 tristate "ST ASC serial port support"
1368 select SERIAL_CORE
1369 depends on ARM || COMPILE_TEST
1370 help
1371 This driver is for the on-chip Asynchronous Serial Controller on
1372 STMicroelectronics STi SoCs.
1373 ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality.
1374 It support all industry standard baud rates.
1375
1376 If unsure, say N.
1377
1378 config SERIAL_ST_ASC_CONSOLE
1379 bool "Support for console on ST ASC"
1380 depends on SERIAL_ST_ASC=y
1381 select SERIAL_CORE_CONSOLE
1382
1383 config SERIAL_MEN_Z135
1384 tristate "MEN 16z135 Support"
1385 select SERIAL_CORE
1386 depends on MCB
1387 help
1388 Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core
1389 on a MCB carrier.
1390
1391 This driver can also be build as a module. If so, the module will be called
1392 men_z135_uart.ko
1393
1394 config SERIAL_SPRD
1395 tristate "Support for Spreadtrum serial"
1396 select SERIAL_CORE
1397 depends on COMMON_CLK
1398 help
1399 This enables the driver for the Spreadtrum's serial.
1400
1401 config SERIAL_SPRD_CONSOLE
1402 bool "Spreadtrum UART console support"
1403 depends on SERIAL_SPRD=y
1404 select SERIAL_CORE_CONSOLE
1405 select SERIAL_EARLYCON
1406 help
1407 Support for early debug console using Spreadtrum's serial. This enables
1408 the console before standard serial driver is probed. This is enabled
1409 with "earlycon" on the kernel command line. The console is
1410 enabled when early_param is processed.
1411
1412 config SERIAL_STM32
1413 tristate "STMicroelectronics STM32 serial port support"
1414 select SERIAL_CORE
1415 depends on ARCH_STM32 || COMPILE_TEST
1416 select SERIAL_MCTRL_GPIO if GPIOLIB
1417 help
1418 This driver is for the on-chip Serial Controller on
1419 STMicroelectronics STM32 MCUs.
1420 USART supports Rx & Tx functionality.
1421 It support all industry standard baud rates.
1422
1423 If unsure, say N.
1424
1425 config SERIAL_STM32_CONSOLE
1426 bool "Support for console on STM32"
1427 depends on SERIAL_STM32=y
1428 select SERIAL_CORE_CONSOLE
1429 select SERIAL_EARLYCON
1430
1431 config SERIAL_MVEBU_UART
1432 bool "Marvell EBU serial port support"
1433 depends on ARCH_MVEBU || COMPILE_TEST
1434 depends on COMMON_CLK
1435 select SERIAL_CORE
1436 help
1437 This driver is for Marvell EBU SoC's UART. If you have a machine
1438 based on the Armada-3700 SoC and wish to use the on-board serial
1439 port,
1440 say 'Y' here.
1441 Otherwise, say 'N'.
1442
1443 config SERIAL_MVEBU_CONSOLE
1444 bool "Console on Marvell EBU serial port"
1445 depends on SERIAL_MVEBU_UART
1446 select SERIAL_CORE_CONSOLE
1447 select SERIAL_EARLYCON
1448 default y
1449 help
1450 Say 'Y' here if you wish to use Armada-3700 UART as the system console.
1451 (the system console is the device which receives all kernel messages
1452 and warnings and which allows logins in single user mode)
1453 Otherwise, say 'N'.
1454
1455 config SERIAL_OWL
1456 tristate "Actions Semi Owl serial port support"
1457 depends on ARCH_ACTIONS || COMPILE_TEST
1458 select SERIAL_CORE
1459 help
1460 This driver is for Actions Semiconductor S500/S900 SoC's UART.
1461 Say 'Y' here if you wish to use the on-board serial port.
1462 Otherwise, say 'N'.
1463
1464 config SERIAL_OWL_CONSOLE
1465 bool "Console on Actions Semi Owl serial port"
1466 depends on SERIAL_OWL=y
1467 select SERIAL_CORE_CONSOLE
1468 select SERIAL_EARLYCON
1469 default y
1470 help
1471 Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART
1472 as the system console.
1473
1474 config SERIAL_RDA
1475 bool "RDA Micro serial port support"
1476 depends on ARCH_RDA || COMPILE_TEST
1477 select SERIAL_CORE
1478 help
1479 This driver is for RDA8810PL SoC's UART.
1480 Say 'Y' here if you wish to use the on-board serial port.
1481 Otherwise, say 'N'.
1482
1483 config SERIAL_RDA_CONSOLE
1484 bool "Console on RDA Micro serial port"
1485 depends on SERIAL_RDA=y
1486 select SERIAL_CORE_CONSOLE
1487 select SERIAL_EARLYCON
1488 default y
1489 help
1490 Say 'Y' here if you wish to use the RDA8810PL UART as the system
1491 console. Only earlycon is implemented currently.
1492
1493 config SERIAL_MILBEAUT_USIO
1494 tristate "Milbeaut USIO/UART serial port support"
1495 depends on ARCH_MILBEAUT || (COMPILE_TEST && OF)
1496 default ARCH_MILBEAUT
1497 select SERIAL_CORE
1498 help
1499 This selects the USIO/UART IP found in Socionext Milbeaut SoCs.
1500
1501 config SERIAL_MILBEAUT_USIO_PORTS
1502 int "Maximum number of CSIO/UART ports (1-8)"
1503 range 1 8
1504 depends on SERIAL_MILBEAUT_USIO
1505 default "4"
1506
1507 config SERIAL_MILBEAUT_USIO_CONSOLE
1508 bool "Support for console on MILBEAUT USIO/UART serial port"
1509 depends on SERIAL_MILBEAUT_USIO=y
1510 default y
1511 select SERIAL_CORE_CONSOLE
1512 select SERIAL_EARLYCON
1513 help
1514 Say 'Y' here if you wish to use a USIO/UART of Socionext Milbeaut
1515 SoCs as the system console (the system console is the device which
1516 receives all kernel messages and warnings and which allows logins in
1517 single user mode).
1518
1519 config SERIAL_LITEUART
1520 tristate "LiteUART serial port support"
1521 depends on HAS_IOMEM
1522 depends on OF || COMPILE_TEST
1523 depends on LITEX || COMPILE_TEST
1524 select SERIAL_CORE
1525 help
1526 This driver is for the FPGA-based LiteUART serial controller from LiteX
1527 SoC builder.
1528
1529 Say 'Y' or 'M' here if you wish to use the LiteUART serial controller.
1530 Otherwise, say 'N'.
1531
1532 config SERIAL_LITEUART_MAX_PORTS
1533 int "Maximum number of LiteUART ports"
1534 depends on SERIAL_LITEUART
1535 default "1"
1536 help
1537 Set this to the maximum number of serial ports you want the driver
1538 to support.
1539
1540 config SERIAL_LITEUART_CONSOLE
1541 bool "LiteUART serial port console support"
1542 depends on SERIAL_LITEUART=y
1543 select SERIAL_CORE_CONSOLE
1544 select SERIAL_EARLYCON
1545 help
1546 Say 'Y' or 'M' here if you wish to use the FPGA-based LiteUART serial
1547 controller from LiteX SoC builder as the system console
1548 (the system console is the device which receives all kernel messages
1549 and warnings and which allows logins in single user mode).
1550 Otherwise, say 'N'.
1551
1552 config SERIAL_SUNPLUS
1553 tristate "Sunplus UART support"
1554 depends on ARCH_SUNPLUS || COMPILE_TEST
1555 select SERIAL_CORE
1556 help
1557 Select this option if you would like to use Sunplus serial port on
1558 Sunplus SoC SP7021.
1559 If you enable this option, Sunplus serial ports in the system will
1560 be registered as ttySUPx.
1561 This driver can also be built as a module. If so, the module will be
1562 called sunplus-uart.
1563
1564 config SERIAL_SUNPLUS_CONSOLE
1565 bool "Console on Sunplus UART"
1566 depends on SERIAL_SUNPLUS
1567 select SERIAL_CORE_CONSOLE
1568 select SERIAL_EARLYCON
1569 help
1570 Select this option if you would like to use a Sunplus UART as the
1571 system console.
1572 Even if you say Y here, the currently visible virtual console
1573 (/dev/tty0) will still be used as the system console by default, but
1574 you can alter that using a kernel command line option such as
1575 "console=ttySUPx".
1576
1577 endmenu
1578
1579 config SERIAL_MCTRL_GPIO
1580 tristate