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