Kconfig 51 KB

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