File Index
Files and directories
Sign in
FILE

Kconfig

File preview with syntax highlighting.

linux-6.19.14/drivers/tty/serial/Kconfig KCONFIG
   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	bool "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 to this option.
 495
 496	  Even if you say Y 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 "Support for DMA on SuperH SCI(F)" 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 || COMPILE_TEST
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
~/ Read-only file preview.