# SPDX-License-Identifier: GPL-2.0 # # Serial device configuration # menu "Serial drivers" depends on HAS_IOMEM config SERIAL_EARLYCON bool depends on SERIAL_CORE help Support for early consoles with the earlycon parameter. This enables the console before standard serial driver is probed. The console is enabled when early_param is processed. source "drivers/tty/serial/8250/Kconfig" comment "Non-8250 serial port support" config SERIAL_AMBA_PL010 tristate "ARM AMBA PL010 serial port support" depends on ARM_AMBA || COMPILE_TEST select SERIAL_CORE help This selects the ARM(R) AMBA(R) PrimeCell PL010 UART. If you have an Integrator/AP or Integrator/PP2 platform, or if you have a Cirrus Logic EP93xx CPU, say Y or M here. If unsure, say N. config SERIAL_AMBA_PL010_CONSOLE bool "Support for console on AMBA serial port" depends on SERIAL_AMBA_PL010=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use an AMBA PrimeCell UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyAM0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_AMBA_PL011 tristate "ARM AMBA PL011 serial port support" depends on ARM_AMBA select SERIAL_CORE help This selects the ARM(R) AMBA(R) PrimeCell PL011 UART. If you have an Integrator/PP2, Integrator/CP or Versatile platform, say Y or M here. If unsure, say N. config SERIAL_AMBA_PL011_CONSOLE bool "Support for console on AMBA serial port" depends on SERIAL_AMBA_PL011=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Say Y here if you wish to use an AMBA PrimeCell UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyAMA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_EARLYCON_ARM_SEMIHOST bool "Early console using ARM semihosting" depends on ARM64 || ARM select SERIAL_CORE select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Support for early debug console using ARM semihosting. This enables the console before standard serial driver is probed. This is enabled with "earlycon=smh" on the kernel command line. The console is enabled when early_param is processed. config SERIAL_EARLYCON_RISCV_SBI bool "Early console using RISC-V SBI" depends on RISCV_SBI_V01 select SERIAL_CORE select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Support for early debug console using RISC-V SBI. This enables the console before standard serial driver is probed. This is enabled with "earlycon=sbi" on the kernel command line. The console is enabled when early_param is processed. config SERIAL_SB1250_DUART tristate "BCM1xxx on-chip DUART serial support" depends on SIBYTE_SB1xxx_SOC=y select SERIAL_CORE default y help Support for the asynchronous serial interface (DUART) included in the BCM1250 and derived System-On-a-Chip (SOC) devices. Note that the letter D in DUART stands for "dual", which is how the device is implemented. Depending on the SOC configuration there may be one or more DUARTs available of which all are handled. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called sb1250-duart. config SERIAL_SB1250_DUART_CONSOLE bool "Support for console on a BCM1xxx DUART serial port" depends on SERIAL_SB1250_DUART=y select SERIAL_CORE_CONSOLE default y help If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). If unsure, say Y. config SERIAL_ATMEL bool "AT91 on-chip serial port support" depends on ARCH_AT91 || COMPILE_TEST select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB select MFD_AT91_USART help This enables the driver for the on-chip UARTs of the Atmel AT91 processors. config SERIAL_ATMEL_CONSOLE bool "Support for console on AT91 serial port" depends on SERIAL_ATMEL=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use an on-chip UART on a Atmel AT91 processor as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_ATMEL_PDC bool "Support DMA transfers on AT91 serial port" depends on SERIAL_ATMEL default y help Say Y here if you wish to use the PDC to do DMA transfers to and from the Atmel AT91 serial port. In order to actually use DMA transfers, make sure that the use_dma_tx and use_dma_rx members in the atmel_uart_data struct is set appropriately for each port. Note that break and error handling currently doesn't work properly when DMA is enabled. Make sure that ports where this matters don't use DMA. config SERIAL_ATMEL_TTYAT bool "Install as device ttyATn instead of ttySn" depends on SERIAL_ATMEL=y help Say Y here if you wish to have the internal AT91 UARTs appear as /dev/ttyATn (major 204, minor starting at 154) instead of the normal /dev/ttySn (major 4, minor starting at 64). This is necessary if you also want other UARTs, such as external 8250/16C550 compatible UARTs. The ttySn nodes are legally reserved for the 8250 serial driver but are often misused by other serial drivers. To use this, you should create suitable ttyATn device nodes in /dev/, and pass "console=ttyATn" to the kernel. Say Y if you have an external 8250/16C550 UART. If unsure, say N. config SERIAL_KGDB_NMI bool "Serial console over KGDB NMI debugger port" depends on KGDB_SERIAL_CONSOLE help This special driver allows you to temporary use NMI debugger port as a normal console (assuming that the port is attached to KGDB). Unlike KDB's disable_nmi command, with this driver you are always able to go back to the debugger using KGDB escape sequence ($3#33). This is because this console driver processes the input in NMI context, and thus is able to intercept the magic sequence. Note that since the console interprets input and uses polling communication methods, for things like PPP you still must fully detach debugger port from the KGDB NMI (i.e. disable_nmi), and use raw console. If unsure, say N. config SERIAL_MESON tristate "Meson serial port support" depends on ARCH_MESON || COMPILE_TEST select SERIAL_CORE help This enables the driver for the on-chip UARTs of the Amlogic MesonX processors. config SERIAL_MESON_CONSOLE bool "Support for console on meson" depends on SERIAL_MESON select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Say Y here if you wish to use a Amlogic MesonX UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode) as /dev/ttyAMLx. config SERIAL_CLPS711X tristate "CLPS711X serial port support" depends on ARCH_CLPS711X || COMPILE_TEST select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB help This enables the driver for the on-chip UARTs of the Cirrus Logic EP711x/EP721x/EP731x processors. config SERIAL_CLPS711X_CONSOLE bool "Support for console on CLPS711X serial port" depends on SERIAL_CLPS711X=y select SERIAL_CORE_CONSOLE help Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyCL1". config SERIAL_SAMSUNG tristate "Samsung SoC serial support" depends on PLAT_SAMSUNG || ARCH_S5PV210 || ARCH_EXYNOS || ARCH_APPLE || COMPILE_TEST select SERIAL_CORE help Support for the on-chip UARTs on the Samsung S3C24xx/S3C64xx/S5Pv210/Exynos and Apple M1 SoCs, providing /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of these ports, depending on how the serial port pins are configured. Choose Y/M here only if you build for such SoC. config SERIAL_SAMSUNG_UARTS_4 bool depends on SERIAL_SAMSUNG default y if !(CPU_S3C2410 || CPU_S3C2412 || CPU_S3C2440 || CPU_S3C2442) help Internal node for the common case of 4 Samsung compatible UARTs config SERIAL_SAMSUNG_UARTS int depends on SERIAL_SAMSUNG default 4 if SERIAL_SAMSUNG_UARTS_4 || CPU_S3C2416 default 3 help Select the number of available UART ports for the Samsung S3C serial driver config SERIAL_SAMSUNG_CONSOLE bool "Support for console on Samsung SoC serial port" depends on SERIAL_SAMSUNG select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Allow selection of the S3C24XX on-board serial ports for use as an virtual console. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySACx". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel at boot time.) config SERIAL_TEGRA tristate "NVIDIA Tegra20/30 SoC serial controller" depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST select SERIAL_CORE help Support for the on-chip UARTs on the NVIDIA Tegra series SOCs providing /dev/ttyTHS0, 1, 2, 3 and 4 (note, some machines may not provide all of these ports, depending on how the serial port are enabled). This driver uses the APB DMA to achieve higher baudrate and better performance. config SERIAL_TEGRA_TCU tristate "NVIDIA Tegra Combined UART" depends on MAILBOX depends on (ARCH_TEGRA && TEGRA_HSP_MBOX) || COMPILE_TEST select SERIAL_CORE help Support for the mailbox-based TCU (Tegra Combined UART) serial port. TCU is a virtual serial port that allows multiplexing multiple data streams into a single hardware serial port. config SERIAL_TEGRA_TCU_CONSOLE bool "Support for console on a Tegra TCU serial port" depends on SERIAL_TEGRA_TCU=y select SERIAL_CORE_CONSOLE default y help If you say Y here, it will be possible to use a the Tegra TCU as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). If unsure, say Y. config SERIAL_MAX3100 tristate "MAX3100 support" depends on SPI select SERIAL_CORE help MAX3100 chip support config SERIAL_MAX310X tristate "MAX310X support" depends on SPI_MASTER select SERIAL_CORE select REGMAP_SPI if SPI_MASTER help This selects support for an advanced UART from Maxim (Dallas). Supported ICs are MAX3107, MAX3108, MAX3109, MAX14830. Each IC contains 128 words each of receive and transmit FIFO that can be controlled through I2C or high-speed SPI. Say Y here if you want to support this ICs. config SERIAL_DZ bool "DECstation DZ serial driver" depends on MACH_DECSTATION && 32BIT select SERIAL_CORE default y help DZ11-family serial controllers for DECstations and VAXstations, including the DC7085, M7814, and M7819. config SERIAL_DZ_CONSOLE bool "Support console on DECstation DZ serial driver" depends on SERIAL_DZ=y select SERIAL_CORE_CONSOLE default y help If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Note that the firmware uses ttyS3 as the serial console on DECstations that use this driver. If unsure, say Y. config SERIAL_ZS tristate "DECstation Z85C30 serial support" depends on MACH_DECSTATION select SERIAL_CORE default y help Support for the Zilog 85C350 serial communications controller used for serial ports in newer DECstation systems. These include the DECsystem 5900 and all models of the DECstation and DECsystem 5000 systems except from model 200. If unsure, say Y. To compile this driver as a module, choose M here: the module will be called zs. config SERIAL_ZS_CONSOLE bool "Support for console on a DECstation Z85C30 serial port" depends on SERIAL_ZS=y select SERIAL_CORE_CONSOLE default y help If you say Y here, it will be possible to use a serial port as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Note that the firmware uses ttyS1 as the serial console on the Maxine and ttyS3 on the others using this driver. If unsure, say Y. config SERIAL_21285 tristate "DC21285 serial port support" depends on FOOTBRIDGE select SERIAL_CORE help If you have a machine based on a 21285 (Footbridge) StrongARM(R)/ PCI bridge you can enable its onboard serial port by enabling this option. config SERIAL_21285_CONSOLE bool "Console on DC21285 serial port" depends on SERIAL_21285=y select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the 21285 footbridge you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyFB". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_PXA bool "PXA serial port support (DEPRECATED)" depends on ARCH_PXA || ARCH_MMP select SERIAL_CORE select SERIAL_8250_PXA if SERIAL_8250=y select SERIAL_PXA_NON8250 if !SERIAL_8250=y help If you have a machine based on an Intel XScale PXA2xx CPU you can enable its onboard serial ports by enabling this option. Unless you have a specific need, you should use SERIAL_8250_PXA instead of this. config SERIAL_PXA_NON8250 bool depends on !SERIAL_8250 config SERIAL_PXA_CONSOLE bool "Console on PXA serial port (DEPRECATED)" depends on SERIAL_PXA select SERIAL_CORE_CONSOLE select SERIAL_8250_CONSOLE if SERIAL_8250=y help If you have enabled the serial port on the Intel XScale PXA CPU you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) Unless you have a specific need, you should use SERIAL_8250_PXA and SERIAL_8250_CONSOLE instead of this. config SERIAL_SA1100 bool "SA1100 serial port support" depends on ARCH_SA1100 select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB help If you have a machine based on a SA1100/SA1110 StrongARM(R) CPU you can enable its onboard serial port by enabling this option. Please read for further info. config SERIAL_SA1100_CONSOLE bool "Console on SA1100 serial port" depends on SERIAL_SA1100 select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the SA1100/SA1110 StrongARM CPU you can make it the console by answering Y to this option. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySA0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_IMX tristate "IMX serial port support" depends on ARCH_MXC || COMPILE_TEST select SERIAL_CORE select RATIONAL select SERIAL_MCTRL_GPIO if GPIOLIB help If you have a machine based on a Motorola IMX CPU you can enable its onboard serial port by enabling this option. config SERIAL_IMX_CONSOLE tristate "Console on IMX serial port" depends on SERIAL_IMX select SERIAL_CORE_CONSOLE help If you have enabled the serial port on the Freescale IMX CPU you can make it the console by answering Y/M to this option. Even if you say Y/M here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttymxc0". (Try "man bootparam" or see the documentation of your bootloader about how to pass options to the kernel at boot time.) config SERIAL_IMX_EARLYCON bool "Earlycon on IMX serial port" depends on ARCH_MXC || COMPILE_TEST depends on OF select SERIAL_CORE select SERIAL_EARLYCON select SERIAL_CORE_CONSOLE default y if SERIAL_IMX_CONSOLE help If you have enabled the earlycon on the Freescale IMX CPU you can make it the earlycon by answering Y to this option. config SERIAL_UARTLITE tristate "Xilinx uartlite serial port support" depends on HAS_IOMEM select SERIAL_CORE help Say Y here if you want to use the Xilinx uartlite serial controller. To compile this driver as a module, choose M here: the module will be called uartlite. config SERIAL_UARTLITE_CONSOLE bool "Support for console on Xilinx uartlite serial port" depends on SERIAL_UARTLITE=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Say Y here if you wish to use a Xilinx uartlite as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_UARTLITE_NR_UARTS int "Maximum number of uartlite serial ports" depends on SERIAL_UARTLITE range 1 256 default 1 help Set this to the number of uartlites in your system, or the number you think you might implement. config SERIAL_SUNCORE bool depends on SPARC select SERIAL_CORE select SERIAL_CORE_CONSOLE default y config SERIAL_SUNZILOG tristate "Sun Zilog8530 serial support" depends on SPARC help This driver supports the Zilog8530 serial ports found on many Sparc systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNZILOG_CONSOLE bool "Console on Sun Zilog8530 serial port" depends on SERIAL_SUNZILOG=y help If you would like to be able to use the Zilog8530 serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_SUNSU tristate "Sun SU serial support" depends on SPARC && PCI help This driver supports the 8250 serial ports that run the keyboard and mouse on (PCI) UltraSPARC systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNSU_CONSOLE bool "Console on Sun SU serial port" depends on SERIAL_SUNSU=y help If you would like to be able to use the SU serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_MUX tristate "Serial MUX support" depends on GSC select SERIAL_CORE default y help Saying Y here will enable the hardware MUX serial driver for the Nova, K class systems and D class with a 'remote control card'. The hardware MUX is not 8250/16550 compatible therefore the /dev/ttyB0 device is shared between the Serial MUX and the PDC software console. The following steps need to be completed to use the Serial MUX: 1. create the device entry (mknod /dev/ttyB0 c 11 0) 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0 3. Add device ttyB0 to /etc/securetty (if you want to log on as root on this console.) 4. Change the kernel command console parameter to: console=ttyB0 config SERIAL_MUX_CONSOLE bool "Support for console on serial MUX" depends on SERIAL_MUX=y select SERIAL_CORE_CONSOLE default y config PDC_CONSOLE bool "PDC software console support" depends on PARISC && !SERIAL_MUX && VT help Saying Y here will enable the software based PDC console to be used as the system console. This is useful for machines in which the hardware based console has not been written yet. The following steps must be completed to use the PDC console: 1. create the device entry (mknod /dev/ttyB0 c 11 0) 2. Edit the /etc/inittab to start a getty listening on /dev/ttyB0 3. Add device ttyB0 to /etc/securetty (if you want to log on as root on this console.) 4. Change the kernel command console parameter to: console=ttyB0 config SERIAL_SUNSAB tristate "Sun Siemens SAB82532 serial support" depends on SPARC && PCI help This driver supports the Siemens SAB82532 DUSCC serial ports on newer (PCI) UltraSPARC systems. Say Y or M if you want to be able to these serial ports. config SERIAL_SUNSAB_CONSOLE bool "Console on Sun Siemens SAB82532 serial port" depends on SERIAL_SUNSAB=y help If you would like to be able to use the SAB82532 serial port on your Sparc system as the console, you can do so by answering Y to this option. config SERIAL_SUNHV bool "Sun4v Hypervisor Console support" depends on SPARC64 help This driver supports the console device found on SUN4V Sparc systems. Say Y if you want to be able to use this device. config SERIAL_IP22_ZILOG tristate "SGI Zilog8530 serial support" depends on SGI_HAS_ZILOG select SERIAL_CORE help This driver supports the Zilog8530 serial ports found on SGI systems. Say Y or M if you want to be able to these serial ports. config SERIAL_IP22_ZILOG_CONSOLE bool "Console on SGI Zilog8530 serial port" depends on SERIAL_IP22_ZILOG=y select SERIAL_CORE_CONSOLE config SERIAL_SH_SCI tristate "SuperH SCI(F) serial port support" depends on SUPERH || ARCH_RENESAS || COMPILE_TEST select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB config SERIAL_SH_SCI_NR_UARTS int "Maximum number of SCI(F) serial ports" if EXPERT range 1 64 if 64BIT range 1 32 if !64BIT depends on SERIAL_SH_SCI default "10" if SUPERH default "18" if ARCH_RENESAS default "2" config SERIAL_SH_SCI_CONSOLE bool "Support for console on SuperH SCI(F)" if EXPERT depends on SERIAL_SH_SCI=y select SERIAL_CORE_CONSOLE default y config SERIAL_SH_SCI_EARLYCON bool "Support for early console on SuperH SCI(F)" if EXPERT depends on SERIAL_SH_SCI=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON default ARCH_RENESAS config SERIAL_SH_SCI_DMA bool "DMA support" if EXPERT depends on SERIAL_SH_SCI && DMA_ENGINE default ARCH_RENESAS config SERIAL_HS_LPC32XX tristate "LPC32XX high speed serial port support" depends on ARCH_LPC32XX || COMPILE_TEST depends on OF select SERIAL_CORE help Support for the LPC32XX high speed serial ports (up to 900kbps). Those are UARTs completely different from the Standard UARTs on the LPC32XX SoC. Choose M or Y here to build this driver. config SERIAL_HS_LPC32XX_CONSOLE bool "Enable LPC32XX high speed UART serial console" depends on SERIAL_HS_LPC32XX=y select SERIAL_CORE_CONSOLE help If you would like to be able to use one of the high speed serial ports on the LPC32XX as the console, you can do so by answering Y to this option. config SERIAL_CORE tristate config SERIAL_CORE_CONSOLE bool config CONSOLE_POLL bool config SERIAL_MCF bool "Coldfire serial support" depends on COLDFIRE select SERIAL_CORE help This serial driver supports the Freescale Coldfire serial ports. config SERIAL_MCF_BAUDRATE int "Default baudrate for Coldfire serial ports" depends on SERIAL_MCF default 19200 help This setting lets you define what the default baudrate is for the ColdFire serial ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_MCF_CONSOLE bool "Coldfire serial console support" depends on SERIAL_MCF select SERIAL_CORE_CONSOLE help Enable a ColdFire internal serial port to be the system console. config SERIAL_PMACZILOG tristate "Mac or PowerMac z85c30 ESCC support" depends on (M68K && MAC) || PPC_PMAC select SERIAL_CORE help This driver supports the Zilog z85C30 serial ports found on (Power)Mac machines. Say Y or M if you want to be able to these serial ports. config SERIAL_PMACZILOG_TTYS bool "Use ttySn device nodes for Zilog z85c30" depends on SERIAL_PMACZILOG help The pmac_zilog driver for the z85C30 chip on many powermacs historically used the device numbers for /dev/ttySn. The 8250 serial port driver also uses these numbers, which means the two drivers being unable to coexist; you could not use both z85C30 and 8250 type ports at the same time. If this option is not selected, the pmac_zilog driver will use the device numbers allocated for /dev/ttyPZn. This allows the pmac_zilog and 8250 drivers to co-exist, but may cause existing userspace setups to break. Programs that need to access the built-in serial ports on powermacs will need to be reconfigured to use /dev/ttyPZn instead of /dev/ttySn. If you enable this option, any z85c30 ports in the system will be registered as ttyS0 onwards as in the past, and you will be unable to use the 8250 module for PCMCIA or other 16C550-style UARTs. Say N unless you need the z85c30 ports on your (Power)Mac to appear as /dev/ttySn. config SERIAL_PMACZILOG_CONSOLE bool "Console on Mac or PowerMac z85c30 serial port" depends on SERIAL_PMACZILOG=y select SERIAL_CORE_CONSOLE help If you would like to be able to use the z85c30 serial port on your (Power)Mac as the console, you can do so by answering Y to this option. config SERIAL_CPM tristate "CPM SCC/SMC serial port support" depends on CPM2 || CPM1 select SERIAL_CORE help This driver supports the SCC and SMC serial ports on Motorola embedded PowerPC that contain a CPM1 (8xx) or CPM2 (8xxx) config SERIAL_CPM_CONSOLE bool "Support for console on CPM SCC/SMC serial port" depends on SERIAL_CPM=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use a SCC or SMC CPM UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Even if you say Y here, the currently visible framebuffer console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyCPM0". (Try "man bootparam" or see the documentation of your boot loader (lilo or loadlin) about how to pass options to the kernel at boot time.) config SERIAL_PIC32 tristate "Microchip PIC32 serial support" depends on MACH_PIC32 select SERIAL_CORE help If you have a PIC32, this driver supports the serial ports. Say Y or M to use PIC32 serial ports, otherwise say N. Note that to use a serial port as a console, this must be included in kernel and not as a module. config SERIAL_PIC32_CONSOLE bool "PIC32 serial console support" depends on SERIAL_PIC32 select SERIAL_CORE_CONSOLE help If you have a PIC32, this driver supports the putting a console on one of the serial ports. Say Y to use the PIC32 console, otherwise say N. config SERIAL_MPC52xx tristate "Freescale MPC52xx/MPC512x family PSC serial support" depends on PPC_MPC52xx || PPC_MPC512x select SERIAL_CORE help This driver supports MPC52xx and MPC512x PSC serial ports. If you would like to use them, you must answer Y or M to this option. Note that for use as console, it must be included in kernel and not as a module. config SERIAL_MPC52xx_CONSOLE bool "Console on a Freescale MPC52xx/MPC512x family PSC serial port" depends on SERIAL_MPC52xx=y select SERIAL_CORE_CONSOLE help Select this options if you'd like to use one of the PSC serial port of the Freescale MPC52xx family as a console. config SERIAL_MPC52xx_CONSOLE_BAUD int "Freescale MPC52xx/MPC512x family PSC serial port baud" depends on SERIAL_MPC52xx_CONSOLE=y default "9600" help Select the MPC52xx console baud rate. This value is only used if the bootloader doesn't pass in the console baudrate config SERIAL_ICOM tristate "IBM Multiport Serial Adapter" depends on PCI depends on PPC_PSERIES || COMPILE_TEST select SERIAL_CORE select FW_LOADER help This driver is for a family of multiport serial adapters including 2 port RVX, 2 port internal modem, 4 port internal modem and a split 1 port RVX and 1 port internal modem. This driver can also be built as a module. If so, the module will be called icom. config SERIAL_TXX9 bool "TMPTX39XX/49XX SIO support" depends on HAS_TXX9_SERIAL select SERIAL_CORE default y config HAS_TXX9_SERIAL bool config SERIAL_TXX9_NR_UARTS int "Maximum number of TMPTX39XX/49XX SIO ports" depends on SERIAL_TXX9 default "6" config SERIAL_TXX9_CONSOLE bool "TMPTX39XX/49XX SIO Console support" depends on SERIAL_TXX9=y select SERIAL_CORE_CONSOLE config SERIAL_TXX9_STDSERIAL bool "TX39XX/49XX SIO act as standard serial" depends on !SERIAL_8250 && SERIAL_TXX9 config SERIAL_VR41XX tristate "NEC VR4100 series Serial Interface Unit support" depends on CPU_VR41XX select SERIAL_CORE help If you have a NEC VR4100 series processor and you want to use Serial Interface Unit(SIU) or Debug Serial Interface Unit(DSIU) (not include VR4111/VR4121 DSIU), say Y. Otherwise, say N. config SERIAL_VR41XX_CONSOLE bool "Enable NEC VR4100 series Serial Interface Unit console" depends on SERIAL_VR41XX=y select SERIAL_CORE_CONSOLE help If you have a NEC VR4100 series processor and you want to use a console on a serial port, say Y. Otherwise, say N. config SERIAL_JSM tristate "Digi International NEO and Classic PCI Support" depends on PCI select SERIAL_CORE help This is a driver for Digi International's Neo and Classic series of cards which provide multiple serial ports. You would need something like this to connect more than two modems to your Linux box, for instance in order to become a dial-in server. This driver supports PCI boards only. If you have a card like this, say Y here, otherwise say N. To compile this driver as a module, choose M here: the module will be called jsm. config SERIAL_MSM tristate "MSM on-chip serial port support" depends on ARCH_QCOM || COMPILE_TEST select SERIAL_CORE config SERIAL_MSM_CONSOLE bool "MSM serial console support" depends on SERIAL_MSM=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON config SERIAL_QCOM_GENI tristate "QCOM on-chip GENI based serial port support" depends on ARCH_QCOM || COMPILE_TEST depends on QCOM_GENI_SE select SERIAL_CORE config SERIAL_QCOM_GENI_CONSOLE bool "QCOM GENI Serial Console support" depends on SERIAL_QCOM_GENI select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Serial console driver for Qualcomm Technologies Inc's GENI based QUP hardware. config SERIAL_VT8500 bool "VIA VT8500 on-chip serial port support" depends on ARCH_VT8500 || COMPILE_TEST select SERIAL_CORE config SERIAL_VT8500_CONSOLE bool "VIA VT8500 serial console support" depends on SERIAL_VT8500=y select SERIAL_CORE_CONSOLE config SERIAL_OMAP tristate "OMAP serial port support" depends on (ARCH_OMAP2PLUS && !SERIAL_8250_OMAP) || COMPILE_TEST select SERIAL_CORE help If you have a machine based on an Texas Instruments OMAP CPU you can enable its onboard serial ports by enabling this option. By enabling this option you take advantage of dma feature available with the omap-serial driver. DMA support can be enabled from platform data. config SERIAL_OMAP_CONSOLE bool "Console on OMAP serial port" depends on SERIAL_OMAP=y select SERIAL_CORE_CONSOLE help Select this option if you would like to use omap serial port as console. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttyOx". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel at boot time.) config SERIAL_SIFIVE tristate "SiFive UART support" depends on OF select SERIAL_CORE help Select this option if you are building a kernel for a device that contains a SiFive UART IP block. This type of UART is present on SiFive FU540 SoCs, among others. config SERIAL_SIFIVE_CONSOLE bool "Console on SiFive UART" depends on SERIAL_SIFIVE=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Select this option if you would like to use a SiFive UART as the system console. Even if you say Y here, the currently visible virtual console (/dev/tty0) will still be used as the system console by default, but you can alter that using a kernel command line option such as "console=ttySIFx". (Try "man bootparam" or see the documentation of your boot loader about how to pass options to the kernel at boot time.) config SERIAL_LANTIQ tristate "Lantiq serial driver" depends on (LANTIQ || X86) || COMPILE_TEST select SERIAL_CORE help Support for UART on Lantiq and Intel SoCs. To compile this driver as a module, select M here. The module will be called lantiq. config SERIAL_LANTIQ_CONSOLE bool "Console on Lantiq UART" depends on SERIAL_LANTIQ=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Select this option if you would like to use a Lantiq UART as the system console. config SERIAL_QE tristate "Freescale QUICC Engine serial port support" depends on QUICC_ENGINE select SERIAL_CORE select FW_LOADER help This driver supports the QE serial ports on Freescale embedded PowerPC that contain a QUICC Engine. config SERIAL_SCCNXP tristate "SCCNXP serial port support" select SERIAL_CORE help This selects support for an advanced UART from NXP (Philips). Supported ICs are SCC2681, SCC2691, SCC2692, SC28L91, SC28L92, SC28L202, SCC68681 and SCC68692. config SERIAL_SCCNXP_CONSOLE bool "Console on SCCNXP serial port" depends on SERIAL_SCCNXP=y select SERIAL_CORE_CONSOLE help Support for console on SCCNXP serial ports. config SERIAL_SC16IS7XX_CORE tristate config SERIAL_SC16IS7XX tristate "SC16IS7xx serial support" select SERIAL_CORE depends on (SPI_MASTER && !I2C) || I2C help This selects support for SC16IS7xx serial ports. Supported ICs are SC16IS740, SC16IS741, SC16IS750, SC16IS752, SC16IS760 and SC16IS762. Select supported buses using options below. config SERIAL_SC16IS7XX_I2C bool "SC16IS7xx for I2C interface" depends on SERIAL_SC16IS7XX depends on I2C select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX select REGMAP_I2C if I2C default y help Enable SC16IS7xx driver on I2C bus, If required say y, and say n to i2c if not required, Enabled by default to support oldconfig. You must select at least one bus for the driver to be built. config SERIAL_SC16IS7XX_SPI bool "SC16IS7xx for spi interface" depends on SERIAL_SC16IS7XX depends on SPI_MASTER select SERIAL_SC16IS7XX_CORE if SERIAL_SC16IS7XX select REGMAP_SPI if SPI_MASTER help Enable SC16IS7xx driver on SPI bus, If required say y, and say n to spi if not required, This is additional support to existing driver. You must select at least one bus for the driver to be built. config SERIAL_TIMBERDALE tristate "Support for timberdale UART" select SERIAL_CORE depends on X86_32 || COMPILE_TEST help Add support for UART controller on timberdale. config SERIAL_BCM63XX tristate "Broadcom BCM63xx/BCM33xx UART support" select SERIAL_CORE depends on COMMON_CLK help This enables the driver for the onchip UART core found on the following chipsets: BCM33xx (cable modem) BCM63xx/BCM63xxx (DSL) BCM68xx (PON) BCM7xxx (STB) - DOCSIS console config SERIAL_BCM63XX_CONSOLE bool "Console on BCM63xx serial port" depends on SERIAL_BCM63XX=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help If you have enabled the serial port on the BCM63xx CPU you can make it the console by answering Y to this option. config SERIAL_GRLIB_GAISLER_APBUART tristate "GRLIB APBUART serial support" depends on OF && SPARC select SERIAL_CORE help Add support for the GRLIB APBUART serial port. config SERIAL_GRLIB_GAISLER_APBUART_CONSOLE bool "Console on GRLIB APBUART serial port" depends on SERIAL_GRLIB_GAISLER_APBUART=y select SERIAL_CORE_CONSOLE help Support for running a console on the GRLIB APBUART config SERIAL_ALTERA_JTAGUART tristate "Altera JTAG UART support" select SERIAL_CORE help This driver supports the Altera JTAG UART port. config SERIAL_ALTERA_JTAGUART_CONSOLE bool "Altera JTAG UART console support" depends on SERIAL_ALTERA_JTAGUART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Enable a Altera JTAG UART port to be the system console. config SERIAL_ALTERA_JTAGUART_CONSOLE_BYPASS bool "Bypass output when no connection" depends on SERIAL_ALTERA_JTAGUART_CONSOLE select SERIAL_CORE_CONSOLE help Bypass console output and keep going even if there is no JTAG terminal connection with the host. config SERIAL_ALTERA_UART tristate "Altera UART support" select SERIAL_CORE help This driver supports the Altera softcore UART port. config SERIAL_ALTERA_UART_MAXPORTS int "Maximum number of Altera UART ports" depends on SERIAL_ALTERA_UART default 4 help This setting lets you define the maximum number of the Altera UART ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_ALTERA_UART_BAUDRATE int "Default baudrate for Altera UART ports" depends on SERIAL_ALTERA_UART default 115200 help This setting lets you define what the default baudrate is for the Altera UART ports. The usual default varies from board to board, and this setting is a way of catering for that. config SERIAL_ALTERA_UART_CONSOLE bool "Altera UART console support" depends on SERIAL_ALTERA_UART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Enable a Altera UART port to be the system console. config SERIAL_PCH_UART tristate "Intel EG20T PCH/LAPIS Semicon IOH(ML7213/ML7223/ML7831) UART" depends on PCI && (X86_32 || MIPS || COMPILE_TEST) select SERIAL_CORE help This driver is for PCH(Platform controller Hub) UART of Intel EG20T which is an IOH(Input/Output Hub) for x86 embedded processor. Enabling PCH_DMA, this PCH UART works as DMA mode. This driver also can be used for LAPIS Semiconductor IOH(Input/ Output Hub), ML7213, ML7223 and ML7831. ML7213 IOH is for IVI(In-Vehicle Infotainment) use, ML7223 IOH is for MP(Media Phone) use and ML7831 IOH is for general purpose use. ML7213/ML7223/ML7831 is companion chip for Intel Atom E6xx series. ML7213/ML7223/ML7831 is completely compatible for Intel EG20T PCH. config SERIAL_PCH_UART_CONSOLE bool "Support for console on Intel EG20T PCH UART/OKI SEMICONDUCTOR ML7213 IOH" depends on SERIAL_PCH_UART=y select SERIAL_CORE_CONSOLE help Say Y here if you wish to use the PCH UART as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_MXS_AUART tristate "MXS AUART support" depends on ARCH_MXS || MACH_ASM9260 || COMPILE_TEST select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB help This driver supports the MXS and Alphascale ASM9260 Application UART (AUART) port. config SERIAL_MXS_AUART_CONSOLE bool "MXS AUART console support" depends on SERIAL_MXS_AUART=y select SERIAL_CORE_CONSOLE help Enable a MXS AUART port to be the system console. config SERIAL_XILINX_PS_UART tristate "Cadence (Xilinx Zynq) UART support" depends on OF select SERIAL_CORE help This driver supports the Cadence UART. It is found e.g. in Xilinx Zynq. config SERIAL_XILINX_PS_UART_CONSOLE bool "Cadence UART console support" depends on SERIAL_XILINX_PS_UART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Enable a Cadence UART port to be the system console. config SERIAL_AR933X tristate "AR933X serial port support" depends on HAVE_CLK && ATH79 select SERIAL_CORE select SERIAL_MCTRL_GPIO if GPIOLIB help If you have an Atheros AR933X SOC based board and want to use the built-in UART of the SoC, say Y to this option. To compile this driver as a module, choose M here: the module will be called ar933x_uart. config SERIAL_AR933X_CONSOLE bool "Console on AR933X serial port" depends on SERIAL_AR933X=y select SERIAL_CORE_CONSOLE help Enable a built-in UART port of the AR933X to be the system console. config SERIAL_AR933X_NR_UARTS int "Maximum number of AR933X serial ports" depends on SERIAL_AR933X default "2" help Set this to the number of serial ports you want the driver to support. config SERIAL_MPS2_UART_CONSOLE bool "MPS2 UART console support" depends on SERIAL_MPS2_UART select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON config SERIAL_MPS2_UART bool "MPS2 UART port" depends on ARCH_MPS2 || COMPILE_TEST select SERIAL_CORE help This driver support the UART ports on ARM MPS2. config SERIAL_ARC tristate "ARC UART driver support" select SERIAL_CORE help Driver for on-chip UART for ARC(Synopsys) for the legacy FPGA Boards (ML50x/ARCAngel4) config SERIAL_ARC_CONSOLE bool "Console on ARC UART" depends on SERIAL_ARC=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Enable system Console on ARC UART config SERIAL_ARC_NR_PORTS int "Number of ARC UART ports" depends on SERIAL_ARC range 1 3 default "1" help Set this to the number of serial ports you want the driver to support. config SERIAL_RP2 tristate "Comtrol RocketPort EXPRESS/INFINITY support" depends on PCI select SERIAL_CORE help This driver supports the Comtrol RocketPort EXPRESS and RocketPort INFINITY families of PCI/PCIe multiport serial adapters. These adapters use a "RocketPort 2" ASIC that is not compatible with the original RocketPort driver (CONFIG_ROCKETPORT). To compile this driver as a module, choose M here: the module will be called rp2. If you want to compile this driver into the kernel, say Y here. If you don't have a suitable RocketPort card installed, say N. config SERIAL_RP2_NR_UARTS int "Maximum number of RocketPort EXPRESS/INFINITY ports" depends on SERIAL_RP2 default "32" help If multiple cards are present, the default limit of 32 ports may need to be increased. config SERIAL_FSL_LPUART tristate "Freescale lpuart serial port support" depends on HAS_DMA select SERIAL_CORE help Support for the on-chip lpuart on some Freescale SOCs. config SERIAL_FSL_LPUART_CONSOLE bool "Console on Freescale lpuart serial port" depends on SERIAL_FSL_LPUART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help If you have enabled the lpuart serial port on the Freescale SoCs, you can make it the console by answering Y to this option. config SERIAL_FSL_LINFLEXUART tristate "Freescale LINFlexD UART serial port support" depends on PRINTK select SERIAL_CORE help Support for the on-chip LINFlexD UART on some Freescale SOCs. config SERIAL_FSL_LINFLEXUART_CONSOLE bool "Console on Freescale LINFlexD UART serial port" depends on SERIAL_FSL_LINFLEXUART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help If you have enabled the LINFlexD UART serial port on the Freescale SoCs, you can make it the console by answering Y to this option. config SERIAL_CONEXANT_DIGICOLOR tristate "Conexant Digicolor CX92xxx USART serial port support" depends on OF select SERIAL_CORE help Support for the on-chip USART on Conexant Digicolor SoCs. config SERIAL_CONEXANT_DIGICOLOR_CONSOLE bool "Console on Conexant Digicolor serial port" depends on SERIAL_CONEXANT_DIGICOLOR=y select SERIAL_CORE_CONSOLE help If you have enabled the USART serial port on Conexant Digicolor SoCs, you can make it the console by answering Y to this option. config SERIAL_ST_ASC tristate "ST ASC serial port support" select SERIAL_CORE depends on ARM || COMPILE_TEST help This driver is for the on-chip Asynchronous Serial Controller on STMicroelectronics STi SoCs. ASC is embedded in ST COMMS IP block. It supports Rx & Tx functionality. It support all industry standard baud rates. If unsure, say N. config SERIAL_ST_ASC_CONSOLE bool "Support for console on ST ASC" depends on SERIAL_ST_ASC=y select SERIAL_CORE_CONSOLE config SERIAL_MEN_Z135 tristate "MEN 16z135 Support" select SERIAL_CORE depends on MCB help Say yes here to enable support for the MEN 16z135 High Speed UART IP-Core on a MCB carrier. This driver can also be build as a module. If so, the module will be called men_z135_uart.ko config SERIAL_SPRD tristate "Support for Spreadtrum serial" select SERIAL_CORE depends on COMMON_CLK help This enables the driver for the Spreadtrum's serial. config SERIAL_SPRD_CONSOLE bool "Spreadtrum UART console support" depends on SERIAL_SPRD=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Support for early debug console using Spreadtrum's serial. This enables the console before standard serial driver is probed. This is enabled with "earlycon" on the kernel command line. The console is enabled when early_param is processed. config SERIAL_STM32 tristate "STMicroelectronics STM32 serial port support" select SERIAL_CORE depends on ARCH_STM32 || COMPILE_TEST select SERIAL_MCTRL_GPIO if GPIOLIB help This driver is for the on-chip Serial Controller on STMicroelectronics STM32 MCUs. USART supports Rx & Tx functionality. It support all industry standard baud rates. If unsure, say N. config SERIAL_STM32_CONSOLE bool "Support for console on STM32" depends on SERIAL_STM32=y select SERIAL_CORE_CONSOLE config SERIAL_MVEBU_UART bool "Marvell EBU serial port support" depends on ARCH_MVEBU || COMPILE_TEST select SERIAL_CORE help This driver is for Marvell EBU SoC's UART. If you have a machine based on the Armada-3700 SoC and wish to use the on-board serial port, say 'Y' here. Otherwise, say 'N'. config SERIAL_MVEBU_CONSOLE bool "Console on Marvell EBU serial port" depends on SERIAL_MVEBU_UART select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON default y help Say 'Y' here if you wish to use Armada-3700 UART as the system console. (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode) Otherwise, say 'N'. config SERIAL_OWL tristate "Actions Semi Owl serial port support" depends on ARCH_ACTIONS || COMPILE_TEST select SERIAL_CORE help This driver is for Actions Semiconductor S500/S900 SoC's UART. Say 'Y' here if you wish to use the on-board serial port. Otherwise, say 'N'. config SERIAL_OWL_CONSOLE bool "Console on Actions Semi Owl serial port" depends on SERIAL_OWL=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON default y help Say 'Y' here if you wish to use Actions Semiconductor S500/S900 UART as the system console. config SERIAL_RDA bool "RDA Micro serial port support" depends on ARCH_RDA || COMPILE_TEST select SERIAL_CORE help This driver is for RDA8810PL SoC's UART. Say 'Y' here if you wish to use the on-board serial port. Otherwise, say 'N'. config SERIAL_RDA_CONSOLE bool "Console on RDA Micro serial port" depends on SERIAL_RDA=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON default y help Say 'Y' here if you wish to use the RDA8810PL UART as the system console. Only earlycon is implemented currently. config SERIAL_MILBEAUT_USIO tristate "Milbeaut USIO/UART serial port support" depends on ARCH_MILBEAUT || (COMPILE_TEST && OF) default ARCH_MILBEAUT select SERIAL_CORE help This selects the USIO/UART IP found in Socionext Milbeaut SoCs. config SERIAL_MILBEAUT_USIO_PORTS int "Maximum number of CSIO/UART ports (1-8)" range 1 8 depends on SERIAL_MILBEAUT_USIO default "4" config SERIAL_MILBEAUT_USIO_CONSOLE bool "Support for console on MILBEAUT USIO/UART serial port" depends on SERIAL_MILBEAUT_USIO=y default y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Say 'Y' here if you wish to use a USIO/UART of Socionext Milbeaut SoCs as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). config SERIAL_LITEUART tristate "LiteUART serial port support" depends on HAS_IOMEM depends on OF || COMPILE_TEST depends on LITEX || COMPILE_TEST select SERIAL_CORE help This driver is for the FPGA-based LiteUART serial controller from LiteX SoC builder. Say 'Y' or 'M' here if you wish to use the LiteUART serial controller. Otherwise, say 'N'. config SERIAL_LITEUART_MAX_PORTS int "Maximum number of LiteUART ports" depends on SERIAL_LITEUART default "1" help Set this to the maximum number of serial ports you want the driver to support. config SERIAL_LITEUART_CONSOLE bool "LiteUART serial port console support" depends on SERIAL_LITEUART=y select SERIAL_CORE_CONSOLE select SERIAL_EARLYCON help Say 'Y' or 'M' here if you wish to use the FPGA-based LiteUART serial controller from LiteX SoC builder as the system console (the system console is the device which receives all kernel messages and warnings and which allows logins in single user mode). Otherwise, say 'N'. endmenu config SERIAL_MCTRL_GPIO tristate