| 1 | # SPDX-License-Identifier: GPL-2.0 |
| 2 | # |
| 3 | # The 8250/16550 serial drivers. You shouldn't be in this list unless |
| 4 | # you somehow have an implicit or explicit dependency on SERIAL_8250. |
| 5 | # |
| 6 | |
| 7 | config SERIAL_8250 |
| 8 | tristate "8250/16550 and compatible serial support" |
| 9 | depends on !S390 |
| 10 | select SERIAL_CORE |
| 11 | select SERIAL_MCTRL_GPIO if GPIOLIB |
| 12 | help |
| 13 | This selects whether you want to include the driver for the standard |
| 14 | serial ports. The standard answer is Y. People who might say N |
| 15 | here are those that are setting up dedicated Ethernet WWW/FTP |
| 16 | servers, or users that have one of the various bus mice instead of a |
| 17 | serial mouse and don't intend to use their machine's standard serial |
| 18 | port for anything. |
| 19 | |
| 20 | To compile this driver as a module, choose M here: the |
| 21 | module will be called 8250. |
| 22 | [WARNING: Do not compile this driver as a module if you are using |
| 23 | non-standard serial ports, since the configuration information will |
| 24 | be lost when the driver is unloaded. This limitation may be lifted |
| 25 | in the future.] |
| 26 | |
| 27 | BTW1: If you have a mouseman serial mouse which is not recognized by |
| 28 | the X window system, try running gpm first. |
| 29 | |
| 30 | BTW2: If you intend to use a software modem (also called Winmodem) |
| 31 | under Linux, forget it. These modems are crippled and require |
| 32 | proprietary drivers which are only available under Windows. |
| 33 | |
| 34 | Most people will say Y or M here, so that they can use serial mice, |
| 35 | modems and similar devices connecting to the standard serial ports. |
| 36 | |
| 37 | config SERIAL_8250_DEPRECATED_OPTIONS |
| 38 | bool "Support 8250_core.* kernel options (DEPRECATED)" |
| 39 | depends on SERIAL_8250 |
| 40 | default y |
| 41 | help |
| 42 | In 3.7 we renamed 8250 to 8250_core by mistake, so now we have to |
| 43 | accept kernel parameters in both forms like 8250_core.nr_uarts=4 and |
| 44 | 8250.nr_uarts=4. We now renamed the module back to 8250, but if |
| 45 | anybody noticed in 3.7 and changed their userspace we still have to |
| 46 | keep the 8250_core.* options around until they revert the changes |
| 47 | they already did. |
| 48 | |
| 49 | If 8250 is built as a module, this adds 8250_core alias instead. |
| 50 | |
| 51 | If you did not notice yet and/or you have userspace from pre-3.7, it |
| 52 | is safe (and recommended) to say N here. |
| 53 | |
| 54 | config SERIAL_8250_PNP |
| 55 | bool "8250/16550 PNP device support" if EXPERT |
| 56 | depends on SERIAL_8250 && PNP |
| 57 | default y |
| 58 | help |
| 59 | This builds standard PNP serial support. You may be able to |
| 60 | disable this feature if you only need legacy serial support. |
| 61 | |
| 62 | config SERIAL_8250_16550A_VARIANTS |
| 63 | bool "Support for variants of the 16550A serial port" |
| 64 | depends on SERIAL_8250 |
| 65 | default !X86 |
| 66 | help |
| 67 | The 8250 driver can probe for many variants of the venerable 16550A |
| 68 | serial port. Doing so takes additional time at boot. |
| 69 | |
| 70 | On modern systems, especially those using serial only for a simple |
| 71 | console, you can say N here. |
| 72 | |
| 73 | config SERIAL_8250_FINTEK |
| 74 | bool "Support for Fintek F81216A LPC to 4 UART RS485 API" |
| 75 | depends on SERIAL_8250 |
| 76 | help |
| 77 | Selecting this option will add support for the RS485 capabilities |
| 78 | of the Fintek F81216A LPC to 4 UART. |
| 79 | |
| 80 | If this option is not selected the device will be configured as a |
| 81 | standard 16550A serial port. |
| 82 | |
| 83 | If unsure, say N. |
| 84 | |
| 85 | config SERIAL_8250_CONSOLE |
| 86 | bool "Console on 8250/16550 and compatible serial port" |
| 87 | depends on SERIAL_8250=y |
| 88 | select SERIAL_CORE_CONSOLE |
| 89 | select SERIAL_EARLYCON |
| 90 | help |
| 91 | If you say Y here, it will be possible to use a serial port as the |
| 92 | system console (the system console is the device which receives all |
| 93 | kernel messages and warnings and which allows logins in single user |
| 94 | mode). This could be useful if some terminal or printer is connected |
| 95 | to that serial port. |
| 96 | |
| 97 | Even if you say Y here, the currently visible virtual console |
| 98 | (/dev/tty0) will still be used as the system console by default, but |
| 99 | you can alter that using a kernel command line option such as |
| 100 | "console=ttyS1". (Try "man bootparam" or see the documentation of |
| 101 | your boot loader (grub or lilo or loadlin) about how to pass options |
| 102 | to the kernel at boot time.) |
| 103 | |
| 104 | If you don't have a VGA card installed and you say Y here, the |
| 105 | kernel will automatically use the first serial line, /dev/ttyS0, as |
| 106 | system console. |
| 107 | |
| 108 | You can set that using a kernel command line option such as |
| 109 | "console=uart8250,io,0x3f8,9600n8" |
| 110 | "console=uart8250,mmio,0xff5e0000,115200n8". |
| 111 | and it will switch to normal serial console when the corresponding |
| 112 | port is ready. |
| 113 | "earlycon=uart8250,io,0x3f8,9600n8" |
| 114 | "earlycon=uart8250,mmio,0xff5e0000,115200n8". |
| 115 | it will not only setup early console. |
| 116 | |
| 117 | If unsure, say N. |
| 118 | |
| 119 | config SERIAL_8250_PARISC |
| 120 | tristate |
| 121 | depends on SERIAL_8250 && PARISC |
| 122 | default SERIAL_8250 |
| 123 | |
| 124 | config SERIAL_8250_DMA |
| 125 | bool "DMA support for 16550 compatible UART controllers" if EXPERT |
| 126 | depends on SERIAL_8250 && DMADEVICES=y |
| 127 | default SERIAL_8250 |
| 128 | help |
| 129 | This builds DMA support that can be used with 8250/16650 |
| 130 | compatible UART controllers that support DMA signaling. |
| 131 | |
| 132 | config SERIAL_8250_PCILIB |
| 133 | bool |
| 134 | |
| 135 | config SERIAL_8250_PCI |
| 136 | tristate "8250/16550 PCI device support" |
| 137 | depends on SERIAL_8250 && PCI |
| 138 | select SERIAL_8250_PCILIB |
| 139 | default SERIAL_8250 |
| 140 | help |
| 141 | This builds standard PCI serial support. You may be able to |
| 142 | disable this feature if you only need legacy serial support. |
| 143 | Saves about 9K. |
| 144 | Note that serial ports on NetMos 9835 Multi-I/O cards are handled |
| 145 | by the parport_serial driver, enabled with CONFIG_PARPORT_SERIAL. |
| 146 | |
| 147 | config SERIAL_8250_EXAR |
| 148 | tristate "8250/16550 Exar/Commtech PCI/PCIe device support" |
| 149 | depends on SERIAL_8250_PCI |
| 150 | default SERIAL_8250 |
| 151 | help |
| 152 | This builds support for XR17C1xx, XR17V3xx and some Commtech |
| 153 | 422x PCIe serial cards that are not covered by the more generic |
| 154 | SERIAL_8250_PCI option. |
| 155 | |
| 156 | config SERIAL_8250_HP300 |
| 157 | tristate |
| 158 | depends on SERIAL_8250 && HP300 |
| 159 | default SERIAL_8250 |
| 160 | |
| 161 | config SERIAL_8250_CS |
| 162 | tristate "8250/16550 PCMCIA device support" |
| 163 | depends on PCMCIA && SERIAL_8250 |
| 164 | help |
| 165 | Say Y here to enable support for 16-bit PCMCIA serial devices, |
| 166 | including serial port cards, modems, and the modem functions of |
| 167 | multi-function Ethernet/modem cards. (PCMCIA- or PC-cards are |
| 168 | credit-card size devices often used with laptops.) |
| 169 | |
| 170 | To compile this driver as a module, choose M here: the |
| 171 | module will be called serial_cs. |
| 172 | |
| 173 | If unsure, say N. |
| 174 | |
| 175 | config SERIAL_8250_MEN_MCB |
| 176 | tristate "MEN MCB UART device support" |
| 177 | depends on MCB && SERIAL_8250 |
| 178 | help |
| 179 | This enables support for FPGA based UARTs found on many MEN |
| 180 | boards. This driver enables support for the 16z025, 16z057 |
| 181 | and 16z125 UARTs. |
| 182 | |
| 183 | To compile this driver as a module, chose M here: the |
| 184 | module will be called 8250_men_mcb. |
| 185 | |
| 186 | |
| 187 | config SERIAL_8250_NR_UARTS |
| 188 | int "Maximum number of 8250/16550 serial ports" |
| 189 | depends on SERIAL_8250 |
| 190 | default "4" |
| 191 | help |
| 192 | Set this to the number of serial ports you want the driver |
| 193 | to support. This includes any ports discovered via ACPI or |
| 194 | PCI enumeration and any ports that may be added at run-time |
| 195 | via hot-plug, or any ISA multi-port serial cards. |
| 196 | |
| 197 | config SERIAL_8250_RUNTIME_UARTS |
| 198 | int "Number of 8250/16550 serial ports to register at runtime" |
| 199 | depends on SERIAL_8250 |
| 200 | range 0 SERIAL_8250_NR_UARTS |
| 201 | default "4" |
| 202 | help |
| 203 | Set this to the maximum number of serial ports you want |
| 204 | the kernel to register at boot time. This can be overridden |
| 205 | with the module parameter "nr_uarts", or boot-time parameter |
| 206 | 8250.nr_uarts |
| 207 | |
| 208 | config SERIAL_8250_EXTENDED |
| 209 | bool "Extended 8250/16550 serial driver options" |
| 210 | depends on SERIAL_8250 |
| 211 | help |
| 212 | If you wish to use any non-standard features of the standard "dumb" |
| 213 | driver, say Y here. This includes HUB6 support, shared serial |
| 214 | interrupts, special multiport support, support for more than the |
| 215 | four COM 1/2/3/4 boards, etc. |
| 216 | |
| 217 | Note that the answer to this question won't directly affect the |
| 218 | kernel: saying N will just cause the configurator to skip all |
| 219 | the questions about serial driver options. If unsure, say N. |
| 220 | |
| 221 | config SERIAL_8250_MANY_PORTS |
| 222 | bool "Support more than 4 legacy serial ports" |
| 223 | depends on SERIAL_8250_EXTENDED && !IA64 |
| 224 | help |
| 225 | Say Y here if you have dumb serial boards other than the four |
| 226 | standard COM 1/2/3/4 ports. This may happen if you have an AST |
| 227 | FourPort, Accent Async, Boca (read the Boca mini-HOWTO, available |
| 228 | from <https://www.tldp.org/docs.html#howto>), or other custom |
| 229 | serial port hardware which acts similar to standard serial port |
| 230 | hardware. If you only use the standard COM 1/2/3/4 ports, you can |
| 231 | say N here to save some memory. You can also say Y if you have an |
| 232 | "intelligent" multiport card such as Digiboards, etc. |
| 233 | |
| 234 | # |
| 235 | # Multi-port serial cards |
| 236 | # |
| 237 | |
| 238 | config SERIAL_8250_FOURPORT |
| 239 | tristate "Support Fourport cards" |
| 240 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
| 241 | help |
| 242 | Say Y here if you have an AST FourPort serial board. |
| 243 | |
| 244 | To compile this driver as a module, choose M here: the module |
| 245 | will be called 8250_fourport. |
| 246 | |
| 247 | config SERIAL_8250_ACCENT |
| 248 | tristate "Support Accent cards" |
| 249 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
| 250 | help |
| 251 | Say Y here if you have an Accent Async serial board. |
| 252 | |
| 253 | To compile this driver as a module, choose M here: the module |
| 254 | will be called 8250_accent. |
| 255 | |
| 256 | config SERIAL_8250_ASPEED_VUART |
| 257 | tristate "Aspeed Virtual UART" |
| 258 | depends on SERIAL_8250 |
| 259 | depends on OF |
| 260 | depends on MFD_SYSCON |
| 261 | depends on ARCH_ASPEED || COMPILE_TEST |
| 262 | select REGMAP |
| 263 | help |
| 264 | If you want to use the virtual UART (VUART) device on Aspeed |
| 265 | BMC platforms, enable this option. This enables the 16550A- |
| 266 | compatible device on the local LPC bus, giving a UART device |
| 267 | with no physical RS232 connections. |
| 268 | |
| 269 | config SERIAL_8250_BOCA |
| 270 | tristate "Support Boca cards" |
| 271 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
| 272 | help |
| 273 | Say Y here if you have a Boca serial board. Please read the Boca |
| 274 | mini-HOWTO, available from <https://www.tldp.org/docs.html#howto> |
| 275 | |
| 276 | To compile this driver as a module, choose M here: the module |
| 277 | will be called 8250_boca. |
| 278 | |
| 279 | config SERIAL_8250_EXAR_ST16C554 |
| 280 | tristate "Support Exar ST16C554/554D Quad UART" |
| 281 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
| 282 | help |
| 283 | The Uplogix Envoy TU301 uses this Exar Quad UART. If you are |
| 284 | tinkering with your Envoy TU301, or have a machine with this UART, |
| 285 | say Y here. |
| 286 | |
| 287 | To compile this driver as a module, choose M here: the module |
| 288 | will be called 8250_exar_st16c554. |
| 289 | |
| 290 | config SERIAL_8250_HUB6 |
| 291 | tristate "Support Hub6 cards" |
| 292 | depends on SERIAL_8250 != n && ISA && SERIAL_8250_MANY_PORTS |
| 293 | help |
| 294 | Say Y here if you have a HUB6 serial board. |
| 295 | |
| 296 | To compile this driver as a module, choose M here: the module |
| 297 | will be called 8250_hub6. |
| 298 | |
| 299 | config SERIAL_8250_PCI1XXXX |
| 300 | tristate "Microchip 8250 based serial port" |
| 301 | depends on SERIAL_8250 && PCI |
| 302 | select SERIAL_8250_PCILIB |
| 303 | help |
| 304 | Select this option if you have a setup with Microchip PCIe |
| 305 | Switch with serial port enabled and wish to enable 8250 |
| 306 | serial driver for the serial interface. This driver support |
| 307 | will ensure to support baud rates upto 1.5Mpbs. |
| 308 | |
| 309 | # |
| 310 | # Misc. options/drivers. |
| 311 | # |
| 312 | |
| 313 | config SERIAL_8250_SHARE_IRQ |
| 314 | bool "Support for sharing serial interrupts" |
| 315 | depends on SERIAL_8250_EXTENDED |
| 316 | help |
| 317 | Some serial boards have hardware support which allows multiple dumb |
| 318 | serial ports on the same board to share a single IRQ. To enable |
| 319 | support for this in the serial driver, say Y here. |
| 320 | |
| 321 | config SERIAL_8250_DETECT_IRQ |
| 322 | bool "Autodetect IRQ on standard ports (unsafe)" |
| 323 | depends on SERIAL_8250_EXTENDED |
| 324 | help |
| 325 | Say Y here if you want the kernel to try to guess which IRQ |
| 326 | to use for your serial port. |
| 327 | |
| 328 | This is considered unsafe; it is far better to configure the IRQ in |
| 329 | a boot script using the setserial command. |
| 330 | |
| 331 | If unsure, say N. |
| 332 | |
| 333 | config SERIAL_8250_RSA |
| 334 | bool "Support RSA serial ports" |
| 335 | depends on SERIAL_8250_EXTENDED |
| 336 | help |
| 337 | Say Y here if you have a IODATA RSA-DV II/S ISA card and |
| 338 | would like to use its >115kbps speeds. |
| 339 | You will need to provide module parameter "probe_rsa", or boot-time |
| 340 | parameter 8250.probe_rsa with I/O addresses of this card then. |
| 341 | |
| 342 | If you don't have such card, or if unsure, say N. |
| 343 | |
| 344 | config SERIAL_8250_DWLIB |
| 345 | bool |
| 346 | |
| 347 | config SERIAL_8250_ACORN |
| 348 | tristate "Acorn expansion card serial port support" |
| 349 | depends on ARCH_ACORN && SERIAL_8250 |
| 350 | help |
| 351 | If you have an Atomwide Serial card or Serial Port card for an Acorn |
| 352 | system, say Y to this option. The driver can handle 1, 2, or 3 port |
| 353 | cards. If unsure, say N. |
| 354 | |
| 355 | config SERIAL_8250_BCM2835AUX |
| 356 | tristate "BCM2835 auxiliar mini UART support" |
| 357 | depends on ARCH_BCM2835 || COMPILE_TEST |
| 358 | depends on SERIAL_8250 && SERIAL_8250_SHARE_IRQ |
| 359 | help |
| 360 | Support for the BCM2835 auxiliar mini UART. |
| 361 | |
| 362 | Features and limitations of the UART are |
| 363 | Registers are similar to 16650 registers, |
| 364 | set bits in the control registers that are unsupported |
| 365 | are ignored and read back as 0 |
| 366 | 7/8 bit operation with 1 start and 1 stop bit |
| 367 | 8 symbols deep fifo for rx and tx |
| 368 | SW controlled RTS and SW readable CTS |
| 369 | Clock rate derived from system clock |
| 370 | Uses 8 times oversampling (compared to 16 times for 16650) |
| 371 | Missing break detection (but break generation) |
| 372 | Missing framing error detection |
| 373 | Missing parity bit |
| 374 | Missing receive time-out interrupt |
| 375 | Missing DCD, DSR, DTR and RI signals |
| 376 | |
| 377 | If unsure, say N. |
| 378 | |
| 379 | config SERIAL_8250_FSL |
| 380 | bool "Freescale 16550 UART support" if COMPILE_TEST && !(PPC || ARM || ARM64) |
| 381 | depends on SERIAL_8250_CONSOLE |
| 382 | default PPC || ARM || ARM64 |
| 383 | help |
| 384 | Selecting this option enables a workaround for a break-detection |
| 385 | erratum for Freescale 16550 UARTs in the 8250 driver. It also |
| 386 | enables support for ACPI enumeration. |
| 387 | |
| 388 | config SERIAL_8250_DFL |
| 389 | tristate "DFL bus driver for Altera 16550 UART" |
| 390 | depends on SERIAL_8250 && FPGA_DFL |
| 391 | help |
| 392 | This option enables support for a Device Feature List (DFL) bus |
| 393 | driver for the Altera 16550 UART. One or more Altera 16550 UARTs |
| 394 | can be instantiated in a FPGA and then be discovered during |
| 395 | enumeration of the DFL bus. |
| 396 | |
| 397 | To compile this driver as a module, chose M here: the |
| 398 | module will be called 8250_dfl. |
| 399 | |
| 400 | config SERIAL_8250_DW |
| 401 | tristate "Support for Synopsys DesignWare 8250 quirks" |
| 402 | depends on SERIAL_8250 |
| 403 | select SERIAL_8250_DWLIB |
| 404 | help |
| 405 | Selecting this option will enable handling of the extra features |
| 406 | present in the Synopsys DesignWare APB UART. |
| 407 | |
| 408 | config SERIAL_8250_EM |
| 409 | tristate "Support for Emma Mobile integrated serial port" |
| 410 | depends on SERIAL_8250 && HAVE_CLK |
| 411 | depends on ARCH_RENESAS || COMPILE_TEST |
| 412 | help |
| 413 | Selecting this option will add support for the integrated serial |
| 414 | port hardware found on the Emma Mobile line of processors. |
| 415 | If unsure, say N. |
| 416 | |
| 417 | config SERIAL_8250_IOC3 |
| 418 | tristate "SGI IOC3 8250 UART support" |
| 419 | depends on SERIAL_8250 |
| 420 | depends on SGI_MFD_IOC3 || COMPILE_TEST |
| 421 | select SERIAL_8250_EXTENDED |
| 422 | select SERIAL_8250_SHARE_IRQ |
| 423 | help |
| 424 | Enable this if you have a SGI Origin or Octane machine. This module |
| 425 | provides basic serial support by directly driving the UART chip |
| 426 | behind the IOC3 device on those systems. Maximum baud speed is |
| 427 | 38400bps using this driver. |
| 428 | |
| 429 | config SERIAL_8250_RT288X |
| 430 | bool "Ralink RT288x/RT305x/RT3662/RT3883 serial port support" |
| 431 | depends on SERIAL_8250 |
| 432 | default y if MIPS_ALCHEMY || SOC_RT288X || SOC_RT305X || SOC_RT3883 || SOC_MT7620 |
| 433 | help |
| 434 | Selecting this option will add support for the alternate register |
| 435 | layout used by Ralink RT288x/RT305x, Alchemy Au1xxx, and some others. |
| 436 | If unsure, say N. |
| 437 | |
| 438 | config SERIAL_8250_OMAP |
| 439 | tristate "Support for OMAP internal UART (8250 based driver)" |
| 440 | depends on SERIAL_8250 |
| 441 | depends on ARCH_OMAP2PLUS || ARCH_K3 || COMPILE_TEST |
| 442 | help |
| 443 | If you have a machine based on an Texas Instruments OMAP CPU you |
| 444 | can enable its onboard serial ports by enabling this option. |
| 445 | |
| 446 | This driver uses ttyS instead of ttyO. |
| 447 | |
| 448 | config SERIAL_8250_OMAP_TTYO_FIXUP |
| 449 | bool "Replace ttyO with ttyS" |
| 450 | depends on SERIAL_8250_OMAP=y && SERIAL_8250_CONSOLE |
| 451 | default y |
| 452 | help |
| 453 | This option replaces the "console=ttyO" argument with the matching |
| 454 | ttyS argument if the user did not specified it on the command line. |
| 455 | This ensures that the user can see the kernel output during boot |
| 456 | which he wouldn't see otherwise. The getty has still to be configured |
| 457 | for ttyS instead of ttyO regardless of this option. |
| 458 | This option is intended for people who "automatically" enable this |
| 459 | driver without knowing that this driver requires a different console= |
| 460 | argument. If you read this, please keep this option disabled and |
| 461 | instead update your kernel command line. If you prepare a kernel for a |
| 462 | distribution or other kind of larger user base then you probably want |
| 463 | to keep this option enabled. Otherwise people might complain about a |
| 464 | not booting kernel because the serial console remains silent in case |
| 465 | they forgot to update the command line. |
| 466 | |
| 467 | config SERIAL_8250_LPC18XX |
| 468 | tristate "NXP LPC18xx/43xx serial port support" |
| 469 | depends on SERIAL_8250 && OF && (ARCH_LPC18XX || COMPILE_TEST) |
| 470 | default ARCH_LPC18XX |
| 471 | help |
| 472 | If you have a LPC18xx/43xx based board and want to use the |
| 473 | serial port, say Y to this option. If unsure, say Y. |
| 474 | |
| 475 | config SERIAL_8250_MT6577 |
| 476 | tristate "Mediatek serial port support" |
| 477 | depends on SERIAL_8250 |
| 478 | depends on ARCH_MEDIATEK || COMPILE_TEST |
| 479 | help |
| 480 | If you have a Mediatek based board and want to use the |
| 481 | serial port, say Y to this option. If unsure, say N. |
| 482 | |
| 483 | config SERIAL_8250_UNIPHIER |
| 484 | tristate "Support for UniPhier on-chip UART" |
| 485 | depends on SERIAL_8250 |
| 486 | depends on ARCH_UNIPHIER || COMPILE_TEST |
| 487 | help |
| 488 | If you have a UniPhier based board and want to use the on-chip |
| 489 | serial ports, say Y to this option. If unsure, say N. |
| 490 | |
| 491 | config SERIAL_8250_INGENIC |
| 492 | tristate "Support for Ingenic SoC serial ports" |
| 493 | depends on SERIAL_8250 |
| 494 | depends on OF_FLATTREE |
| 495 | depends on MIPS || COMPILE_TEST |
| 496 | help |
| 497 | If you have a system using an Ingenic SoC and wish to make use of |
| 498 | its UARTs, say Y to this option. If unsure, say N. |
| 499 | |
| 500 | config SERIAL_8250_LPSS |
| 501 | tristate "Support for serial ports on Intel LPSS platforms" |
| 502 | default SERIAL_8250 |
| 503 | depends on SERIAL_8250 && PCI |
| 504 | depends on X86 || COMPILE_TEST |
| 505 | select SERIAL_8250_DWLIB |
| 506 | select DW_DMAC_CORE if SERIAL_8250_DMA |
| 507 | select DW_DMAC_PCI if (SERIAL_8250_DMA && X86_INTEL_LPSS) |
| 508 | select RATIONAL |
| 509 | help |
| 510 | Selecting this option will enable handling of the UART found on |
| 511 | various Intel platforms such as: |
| 512 | - Intel Baytrail SoC |
| 513 | - Intel Braswell SoC |
| 514 | - Intel Quark X1000 SoC |
| 515 | that are not covered by the more generic SERIAL_8250_PCI option. |
| 516 | |
| 517 | config SERIAL_8250_MID |
| 518 | tristate "Support for serial ports on Intel MID platforms" |
| 519 | default SERIAL_8250 |
| 520 | depends on SERIAL_8250 && PCI |
| 521 | depends on X86 || COMPILE_TEST |
| 522 | select HSU_DMA if SERIAL_8250_DMA |
| 523 | select HSU_DMA_PCI if (HSU_DMA && X86_INTEL_MID) |
| 524 | select RATIONAL |
| 525 | help |
| 526 | Selecting this option will enable handling of the UART found on |
| 527 | Intel Medfield SOC and various other Intel platforms that is not |
| 528 | covered by the more generic SERIAL_8250_PCI option. |
| 529 | |
| 530 | config SERIAL_8250_PERICOM |
| 531 | tristate "Support for Pericom and Acces I/O serial ports" |
| 532 | default SERIAL_8250 |
| 533 | depends on SERIAL_8250 && PCI |
| 534 | help |
| 535 | Selecting this option will enable handling of the Pericom and Acces |
| 536 | I/O UARTs that are not covered by the more generic SERIAL_8250_PCI |
| 537 | option. |
| 538 | |
| 539 | config SERIAL_8250_PXA |
| 540 | tristate "PXA serial port support" |
| 541 | depends on SERIAL_8250 |
| 542 | depends on ARCH_PXA || ARCH_MMP || COMPILE_TEST |
| 543 | help |
| 544 | If you have a machine based on an Intel XScale PXA2xx CPU you can |
| 545 | enable its onboard serial ports by enabling this option. The option is |
| 546 | applicable to both devicetree and legacy boards, and early console is |
| 547 | part of its support. |
| 548 | |
| 549 | config SERIAL_8250_TEGRA |
| 550 | tristate "8250 support for Tegra serial ports" |
| 551 | default SERIAL_8250 |
| 552 | depends on SERIAL_8250 |
| 553 | depends on ARCH_TEGRA || COMPILE_TEST |
| 554 | help |
| 555 | Select this option if you have machine with an NVIDIA Tegra SoC and |
| 556 | wish to enable 8250 serial driver for the Tegra serial interfaces. |
| 557 | |
| 558 | config SERIAL_8250_BCM7271 |
| 559 | tristate "Broadcom 8250 based serial port" |
| 560 | depends on SERIAL_8250 && (ARCH_BRCMSTB || COMPILE_TEST) |
| 561 | default ARCH_BRCMSTB |
| 562 | help |
| 563 | If you have a Broadcom STB based board and want to use the |
| 564 | enhanced features of the Broadcom 8250 based serial port, |
| 565 | including DMA support and high accuracy BAUD rates, say |
| 566 | Y to this option. If unsure, say N. |
| 567 | |
| 568 | config SERIAL_OF_PLATFORM |
| 569 | tristate "Devicetree based probing for 8250 ports" |
| 570 | depends on SERIAL_8250 && OF |
| 571 | help |
| 572 | This option is used for all 8250 compatible serial ports that |
| 573 | are probed through devicetree, including Open Firmware based |
| 574 | PowerPC systems and embedded systems on architectures using the |
| 575 | flattened device tree format. |