Kconfig 50 KB

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