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