Linux Audio

Check our new training course

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