| .. | .. |
|---|
| 1 | +# SPDX-License-Identifier: GPL-2.0 |
|---|
| 1 | 2 | # |
|---|
| 2 | 3 | # The 8250/16550 serial drivers. You shouldn't be in this list unless |
|---|
| 3 | 4 | # you somehow have an implicit or explicit dependency on SERIAL_8250. |
|---|
| .. | .. |
|---|
| 7 | 8 | tristate "8250/16550 and compatible serial support" |
|---|
| 8 | 9 | depends on !S390 |
|---|
| 9 | 10 | select SERIAL_CORE |
|---|
| 10 | | - ---help--- |
|---|
| 11 | + select SERIAL_MCTRL_GPIO if GPIOLIB |
|---|
| 12 | + help |
|---|
| 11 | 13 | This selects whether you want to include the driver for the standard |
|---|
| 12 | 14 | serial ports. The standard answer is Y. People who might say N |
|---|
| 13 | 15 | here are those that are setting up dedicated Ethernet WWW/FTP |
|---|
| .. | .. |
|---|
| 37 | 39 | bool "Support 8250_core.* kernel options (DEPRECATED)" |
|---|
| 38 | 40 | depends on SERIAL_8250 |
|---|
| 39 | 41 | default y |
|---|
| 40 | | - ---help--- |
|---|
| 42 | + help |
|---|
| 41 | 43 | In 3.7 we renamed 8250 to 8250_core by mistake, so now we have to |
|---|
| 42 | 44 | accept kernel parameters in both forms like 8250_core.nr_uarts=4 and |
|---|
| 43 | 45 | 8250.nr_uarts=4. We now renamed the module back to 8250, but if |
|---|
| .. | .. |
|---|
| 54 | 56 | bool "8250/16550 PNP device support" if EXPERT |
|---|
| 55 | 57 | depends on SERIAL_8250 && PNP |
|---|
| 56 | 58 | default y |
|---|
| 57 | | - ---help--- |
|---|
| 59 | + help |
|---|
| 58 | 60 | This builds standard PNP serial support. You may be able to |
|---|
| 59 | 61 | disable this feature if you only need legacy serial support. |
|---|
| 62 | + |
|---|
| 63 | +config SERIAL_8250_16550A_VARIANTS |
|---|
| 64 | + bool "Support for variants of the 16550A serial port" |
|---|
| 65 | + depends on SERIAL_8250 |
|---|
| 66 | + default !X86 |
|---|
| 67 | + help |
|---|
| 68 | + The 8250 driver can probe for many variants of the venerable 16550A |
|---|
| 69 | + serial port. Doing so takes additional time at boot. |
|---|
| 70 | + |
|---|
| 71 | + On modern systems, especially those using serial only for a simple |
|---|
| 72 | + console, you can say N here. |
|---|
| 60 | 73 | |
|---|
| 61 | 74 | config SERIAL_8250_FINTEK |
|---|
| 62 | 75 | bool "Support for Fintek F81216A LPC to 4 UART RS485 API" |
|---|
| 63 | 76 | depends on SERIAL_8250 |
|---|
| 64 | | - ---help--- |
|---|
| 77 | + help |
|---|
| 65 | 78 | Selecting this option will add support for the RS485 capabilities |
|---|
| 66 | 79 | of the Fintek F81216A LPC to 4 UART. |
|---|
| 67 | 80 | |
|---|
| .. | .. |
|---|
| 75 | 88 | depends on SERIAL_8250=y |
|---|
| 76 | 89 | select SERIAL_CORE_CONSOLE |
|---|
| 77 | 90 | select SERIAL_EARLYCON |
|---|
| 78 | | - ---help--- |
|---|
| 91 | + help |
|---|
| 79 | 92 | If you say Y here, it will be possible to use a serial port as the |
|---|
| 80 | 93 | system console (the system console is the device which receives all |
|---|
| 81 | 94 | kernel messages and warnings and which allows logins in single user |
|---|
| .. | .. |
|---|
| 106 | 119 | |
|---|
| 107 | 120 | config SERIAL_8250_GSC |
|---|
| 108 | 121 | tristate |
|---|
| 109 | | - depends on SERIAL_8250 && GSC |
|---|
| 122 | + depends on SERIAL_8250 && PARISC |
|---|
| 110 | 123 | default SERIAL_8250 |
|---|
| 111 | 124 | |
|---|
| 112 | 125 | config SERIAL_8250_DMA |
|---|
| .. | .. |
|---|
| 145 | 158 | config SERIAL_8250_CS |
|---|
| 146 | 159 | tristate "8250/16550 PCMCIA device support" |
|---|
| 147 | 160 | depends on PCMCIA && SERIAL_8250 |
|---|
| 148 | | - ---help--- |
|---|
| 161 | + help |
|---|
| 149 | 162 | Say Y here to enable support for 16-bit PCMCIA serial devices, |
|---|
| 150 | 163 | including serial port cards, modems, and the modem functions of |
|---|
| 151 | 164 | multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are |
|---|
| .. | .. |
|---|
| 209 | 222 | Say Y here if you have dumb serial boards other than the four |
|---|
| 210 | 223 | standard COM 1/2/3/4 ports. This may happen if you have an AST |
|---|
| 211 | 224 | FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available |
|---|
| 212 | | - from <http://www.tldp.org/docs.html#howto>), or other custom |
|---|
| 225 | + from <https://www.tldp.org/docs.html#howto>), or other custom |
|---|
| 213 | 226 | serial port hardware which acts similar to standard serial port |
|---|
| 214 | 227 | hardware. If you only use the standard COM 1/2/3/4 ports, you can |
|---|
| 215 | 228 | say N here to save some memory. You can also say Y if you have an |
|---|
| .. | .. |
|---|
| 241 | 254 | tristate "Aspeed Virtual UART" |
|---|
| 242 | 255 | depends on SERIAL_8250 |
|---|
| 243 | 256 | depends on OF |
|---|
| 257 | + depends on MFD_SYSCON |
|---|
| 258 | + depends on ARCH_ASPEED || COMPILE_TEST |
|---|
| 259 | + select REGMAP |
|---|
| 244 | 260 | help |
|---|
| 245 | 261 | If you want to use the virtual UART (VUART) device on Aspeed |
|---|
| 246 | 262 | BMC platforms, enable this option. This enables the 16550A- |
|---|
| .. | .. |
|---|
| 252 | 268 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
|---|
| 253 | 269 | help |
|---|
| 254 | 270 | Say Y here if you have a Boca serial board. Please read the Boca |
|---|
| 255 | | - mini-HOWTO, available from <http://www.tldp.org/docs.html#howto> |
|---|
| 271 | + mini-HOWTO, available from <https://www.tldp.org/docs.html#howto> |
|---|
| 256 | 272 | |
|---|
| 257 | 273 | To compile this driver as a module, choose M here: the module |
|---|
| 258 | 274 | will be called 8250_boca. |
|---|
| .. | .. |
|---|
| 312 | 328 | |
|---|
| 313 | 329 | If you don't have such card, or if unsure, say N. |
|---|
| 314 | 330 | |
|---|
| 331 | +config SERIAL_8250_DWLIB |
|---|
| 332 | + bool |
|---|
| 333 | + |
|---|
| 315 | 334 | config SERIAL_8250_ACORN |
|---|
| 316 | 335 | tristate "Acorn expansion card serial port support" |
|---|
| 317 | 336 | depends on ARCH_ACORN && SERIAL_8250 |
|---|
| .. | .. |
|---|
| 329 | 348 | |
|---|
| 330 | 349 | Features and limitations of the UART are |
|---|
| 331 | 350 | Registers are similar to 16650 registers, |
|---|
| 332 | | - set bits in the control registers that are unsupported |
|---|
| 351 | + set bits in the control registers that are unsupported |
|---|
| 333 | 352 | are ignored and read back as 0 |
|---|
| 334 | 353 | 7/8 bit operation with 1 start and 1 stop bit |
|---|
| 335 | 354 | 8 symbols deep fifo for rx and tx |
|---|
| .. | .. |
|---|
| 352 | 371 | config SERIAL_8250_DW |
|---|
| 353 | 372 | tristate "Support for Synopsys DesignWare 8250 quirks" |
|---|
| 354 | 373 | depends on SERIAL_8250 |
|---|
| 374 | + select SERIAL_8250_DWLIB |
|---|
| 355 | 375 | help |
|---|
| 356 | 376 | Selecting this option will enable handling of the extra features |
|---|
| 357 | 377 | present in the Synopsys DesignWare APB UART. |
|---|
| .. | .. |
|---|
| 364 | 384 | port hardware found on the Emma Mobile line of processors. |
|---|
| 365 | 385 | If unsure, say N. |
|---|
| 366 | 386 | |
|---|
| 387 | +config SERIAL_8250_IOC3 |
|---|
| 388 | + tristate "SGI IOC3 8250 UART support" |
|---|
| 389 | + depends on SGI_MFD_IOC3 && SERIAL_8250 |
|---|
| 390 | + select SERIAL_8250_EXTENDED |
|---|
| 391 | + select SERIAL_8250_SHARE_IRQ |
|---|
| 392 | + help |
|---|
| 393 | + Enable this if you have a SGI Origin or Octane machine. This module |
|---|
| 394 | + provides basic serial support by directly driving the UART chip |
|---|
| 395 | + behind the IOC3 device on those systems. Maximum baud speed is |
|---|
| 396 | + 38400bps using this driver. |
|---|
| 397 | + |
|---|
| 367 | 398 | config SERIAL_8250_RT288X |
|---|
| 368 | 399 | bool "Ralink RT288x/RT305x/RT3662/RT3883 serial port support" |
|---|
| 369 | 400 | depends on SERIAL_8250 |
|---|
| .. | .. |
|---|
| 375 | 406 | |
|---|
| 376 | 407 | config SERIAL_8250_OMAP |
|---|
| 377 | 408 | tristate "Support for OMAP internal UART (8250 based driver)" |
|---|
| 378 | | - depends on SERIAL_8250 && ARCH_OMAP2PLUS |
|---|
| 409 | + depends on SERIAL_8250 && (ARCH_OMAP2PLUS || ARCH_K3) |
|---|
| 379 | 410 | help |
|---|
| 380 | 411 | If you have a machine based on an Texas Instruments OMAP CPU you |
|---|
| 381 | 412 | can enable its onboard serial ports by enabling this option. |
|---|
| .. | .. |
|---|
| 438 | 469 | default SERIAL_8250 |
|---|
| 439 | 470 | depends on SERIAL_8250 && PCI |
|---|
| 440 | 471 | depends on X86 || COMPILE_TEST |
|---|
| 472 | + select SERIAL_8250_DWLIB |
|---|
| 441 | 473 | select DW_DMAC_CORE if SERIAL_8250_DMA |
|---|
| 442 | 474 | select DW_DMAC_PCI if (SERIAL_8250_DMA && X86_INTEL_LPSS) |
|---|
| 443 | 475 | select RATIONAL |
|---|
| .. | .. |
|---|
| 461 | 493 | present on the UART found on Intel Medfield SOC and various other |
|---|
| 462 | 494 | Intel platforms. |
|---|
| 463 | 495 | |
|---|
| 464 | | -config SERIAL_8250_MOXA |
|---|
| 465 | | - tristate "MOXA SmartIO MUE support" |
|---|
| 466 | | - depends on SERIAL_8250 && PCI |
|---|
| 467 | | - help |
|---|
| 468 | | - Say Y here if you have a Moxa SmartIO MUE multiport serial card. |
|---|
| 469 | | - If unsure, say N. |
|---|
| 470 | | - |
|---|
| 471 | | - This driver can also be built as a module. The module will be called |
|---|
| 472 | | - 8250_moxa. If you want to do that, say M here. |
|---|
| 473 | | - |
|---|
| 474 | 496 | config SERIAL_8250_PXA |
|---|
| 475 | 497 | tristate "PXA serial port support" |
|---|
| 476 | 498 | depends on SERIAL_8250 |
|---|
| .. | .. |
|---|
| 481 | 503 | applicable to both devicetree and legacy boards, and early console is |
|---|
| 482 | 504 | part of its support. |
|---|
| 483 | 505 | |
|---|
| 506 | +config SERIAL_8250_TEGRA |
|---|
| 507 | + tristate "8250 support for Tegra serial ports" |
|---|
| 508 | + default SERIAL_8250 |
|---|
| 509 | + depends on SERIAL_8250 |
|---|
| 510 | + depends on ARCH_TEGRA || COMPILE_TEST |
|---|
| 511 | + help |
|---|
| 512 | + Select this option if you have machine with an NVIDIA Tegra SoC and |
|---|
| 513 | + wish to enable 8250 serial driver for the Tegra serial interfaces. |
|---|
| 514 | + |
|---|
| 484 | 515 | config SERIAL_OF_PLATFORM |
|---|
| 485 | 516 | tristate "Devicetree based probing for 8250 ports" |
|---|
| 486 | 517 | depends on SERIAL_8250 && OF |
|---|