10b11dbf7SMasahiro Yamada# 20b11dbf7SMasahiro Yamada# Serial device configuration 30b11dbf7SMasahiro Yamada# 40b11dbf7SMasahiro Yamada 50b11dbf7SMasahiro Yamadamenu "Serial drivers" 60b11dbf7SMasahiro Yamada 7f40574e2SPhilipp Tomsichconfig BAUDRATE 8f40574e2SPhilipp Tomsich int "Default baudrate" 9f40574e2SPhilipp Tomsich default 115200 10f40574e2SPhilipp Tomsich help 11f40574e2SPhilipp Tomsich Select a default baudrate, where "default" has a driver-specific 12f40574e2SPhilipp Tomsich meaning of either setting the baudrate for the early debug UART 13f40574e2SPhilipp Tomsich in the SPL stage (most drivers) or for choosing a default baudrate 14f40574e2SPhilipp Tomsich in the absence of an environment setting (serial_mxc.c). 15f40574e2SPhilipp Tomsich 168c458588SHans de Goedeconfig REQUIRE_SERIAL_CONSOLE 178c458588SHans de Goede bool "Require a serial port for console" 188c458588SHans de Goede # Running without a serial console is not supported by the 198c458588SHans de Goede # non-dm serial code 208c458588SHans de Goede depends on DM_SERIAL 218c458588SHans de Goede default y 228c458588SHans de Goede help 238c458588SHans de Goede Require a serial port for the console, and panic if none is found 248c458588SHans de Goede during serial port initialization (default y). Set this to n on 258c458588SHans de Goede boards which have no debug serial port whatsoever. 268c458588SHans de Goede 276f6b7cfaSTom Riniconfig SPECIFY_CONSOLE_INDEX 286f6b7cfaSTom Rini bool "Specify the port number used for console" 296f6b7cfaSTom Rini default y if !DM_SERIAL || (SPL && !SPL_DM_SERIAL) || \ 306f6b7cfaSTom Rini (TPL && !TPL_DM_SERIAL) 316f6b7cfaSTom Rini help 326f6b7cfaSTom Rini In various cases, we need to specify which of the UART devices that 336f6b7cfaSTom Rini a board or SoC has available are to be used for the console device 346f6b7cfaSTom Rini in U-Boot. 356f6b7cfaSTom Rini 3692c55b68SSimon Glassconfig SERIAL_PRESENT 3792c55b68SSimon Glass bool "Provide a serial driver" 3892c55b68SSimon Glass depends on DM_SERIAL 3992c55b68SSimon Glass default y 4092c55b68SSimon Glass help 4192c55b68SSimon Glass In very space-constrained devices even the full UART driver is too 4292c55b68SSimon Glass large. In this case the debug UART can still be used in some cases. 4392c55b68SSimon Glass This option enables the full UART in U-Boot, so if is it disabled, 4492c55b68SSimon Glass the full UART driver will be omitted, thus saving space. 4592c55b68SSimon Glass 4692c55b68SSimon Glassconfig SPL_SERIAL_PRESENT 4792c55b68SSimon Glass bool "Provide a serial driver in SPL" 4892c55b68SSimon Glass depends on DM_SERIAL 4992c55b68SSimon Glass default y 5092c55b68SSimon Glass help 5192c55b68SSimon Glass In very space-constrained devices even the full UART driver is too 5292c55b68SSimon Glass large. In this case the debug UART can still be used in some cases. 5392c55b68SSimon Glass This option enables the full UART in SPL, so if is it disabled, 5492c55b68SSimon Glass the full UART driver will be omitted, thus saving space. 5592c55b68SSimon Glass 566f6b7cfaSTom Rini# Logic to allow us to use the imply keyword to set what the default port 576f6b7cfaSTom Rini# should be. The default is otherwise 1. 586f6b7cfaSTom Riniconfig CONS_INDEX_0 596f6b7cfaSTom Rini bool 606f6b7cfaSTom Rini 616f6b7cfaSTom Riniconfig CONS_INDEX_2 626f6b7cfaSTom Rini bool 636f6b7cfaSTom Rini 646f6b7cfaSTom Riniconfig CONS_INDEX_3 656f6b7cfaSTom Rini bool 666f6b7cfaSTom Rini 676f6b7cfaSTom Riniconfig CONS_INDEX_4 686f6b7cfaSTom Rini bool 696f6b7cfaSTom Rini 706f6b7cfaSTom Riniconfig CONS_INDEX_5 716f6b7cfaSTom Rini bool 726f6b7cfaSTom Rini 736f6b7cfaSTom Riniconfig CONS_INDEX_6 746f6b7cfaSTom Rini bool 756f6b7cfaSTom Rini 767095f864SMylène Josserandconfig CONS_INDEX 777095f864SMylène Josserand int "UART used for console" 786f6b7cfaSTom Rini depends on SPECIFY_CONSOLE_INDEX 796f6b7cfaSTom Rini range 0 6 806f6b7cfaSTom Rini default 0 if CONS_INDEX_0 816f6b7cfaSTom Rini default 2 if CONS_INDEX_2 826f6b7cfaSTom Rini default 3 if CONS_INDEX_3 836f6b7cfaSTom Rini default 4 if CONS_INDEX_4 846f6b7cfaSTom Rini default 5 if CONS_INDEX_5 856f6b7cfaSTom Rini default 6 if CONS_INDEX_6 867095f864SMylène Josserand default 1 877095f864SMylène Josserand help 886f6b7cfaSTom Rini Set this to match the UART number of the serial console. 897095f864SMylène Josserand 90da333ae7SMasahiro Yamadaconfig DM_SERIAL 91da333ae7SMasahiro Yamada bool "Enable Driver Model for serial drivers" 92da333ae7SMasahiro Yamada depends on DM 93da333ae7SMasahiro Yamada help 94f94a1bedSSimon Glass Enable driver model for serial. This replaces 95f94a1bedSSimon Glass drivers/serial/serial.c with the serial uclass, which 96f94a1bedSSimon Glass implements serial_putc() etc. The uclass interface is 97f94a1bedSSimon Glass defined in include/serial.h. 98ff247b7aSMasahiro Yamada 993ca7a06aSStefan Roeseconfig SERIAL_RX_BUFFER 1003ca7a06aSStefan Roese bool "Enable RX buffer for serial input" 1013ca7a06aSStefan Roese depends on DM_SERIAL 1023ca7a06aSStefan Roese help 1033ca7a06aSStefan Roese Enable RX buffer support for the serial driver. This enables 1043ca7a06aSStefan Roese pasting longer strings, even when the RX FIFO of the UART is 1053ca7a06aSStefan Roese not big enough (e.g. 16 bytes on the normal NS16550). 1063ca7a06aSStefan Roese 1073ca7a06aSStefan Roeseconfig SERIAL_RX_BUFFER_SIZE 1083ca7a06aSStefan Roese int "RX buffer size" 1093ca7a06aSStefan Roese depends on SERIAL_RX_BUFFER 1103ca7a06aSStefan Roese default 256 1113ca7a06aSStefan Roese help 1123ca7a06aSStefan Roese The size of the RX buffer (needs to be power of 2) 1133ca7a06aSStefan Roese 114ae5326a6SAlexander Grafconfig SERIAL_SEARCH_ALL 115ae5326a6SAlexander Graf bool "Search for serial devices after default one failed" 116ae5326a6SAlexander Graf depends on DM_SERIAL 117ae5326a6SAlexander Graf help 118ae5326a6SAlexander Graf The serial subsystem only searches for a single serial device 119ae5326a6SAlexander Graf that was instantiated, but does not check whether it was probed 120ae5326a6SAlexander Graf correctly. With this option set, we make successful probing 121ae5326a6SAlexander Graf mandatory and search for fallback serial devices if the default 122ae5326a6SAlexander Graf device does not work. 123ae5326a6SAlexander Graf 124ae5326a6SAlexander Graf If unsure, say N. 125ae5326a6SAlexander Graf 126891f7ae6SSimon Glassconfig SPL_DM_SERIAL 1270424990cSHeiko Schocher bool "Enable Driver Model for serial drivers in SPL" 1286f6b7cfaSTom Rini depends on DM_SERIAL && SPL_DM 1296f6b7cfaSTom Rini default y 130891f7ae6SSimon Glass help 131891f7ae6SSimon Glass Enable driver model for serial in SPL. This replaces 132891f7ae6SSimon Glass drivers/serial/serial.c with the serial uclass, which 133891f7ae6SSimon Glass implements serial_putc() etc. The uclass interface is 134891f7ae6SSimon Glass defined in include/serial.h. 135891f7ae6SSimon Glass 136891f7ae6SSimon Glassconfig TPL_DM_SERIAL 1370424990cSHeiko Schocher bool "Enable Driver Model for serial drivers in TPL" 138891f7ae6SSimon Glass depends on DM_SERIAL 139891f7ae6SSimon Glass default y if TPL && DM_SERIAL 140891f7ae6SSimon Glass help 141891f7ae6SSimon Glass Enable driver model for serial in TPL. This replaces 142891f7ae6SSimon Glass drivers/serial/serial.c with the serial uclass, which 143891f7ae6SSimon Glass implements serial_putc() etc. The uclass interface is 144891f7ae6SSimon Glass defined in include/serial.h. 145891f7ae6SSimon Glass 1462f964aa7SSimon Glassconfig DEBUG_UART 1472f964aa7SSimon Glass bool "Enable an early debug UART for debugging" 1482f964aa7SSimon Glass help 1492f964aa7SSimon Glass The debug UART is intended for use very early in U-Boot to debug 1502f964aa7SSimon Glass problems when an ICE or other debug mechanism is not available. 1512f964aa7SSimon Glass 1522f964aa7SSimon Glass To use it you should: 1532f964aa7SSimon Glass - Make sure your UART supports this interface 1542f964aa7SSimon Glass - Enable CONFIG_DEBUG_UART 1552f964aa7SSimon Glass - Enable the CONFIG for your UART to tell it to provide this interface 1562f964aa7SSimon Glass (e.g. CONFIG_DEBUG_UART_NS16550) 1572f964aa7SSimon Glass - Define the required settings as needed (see below) 1582f964aa7SSimon Glass - Call debug_uart_init() before use 1592f964aa7SSimon Glass - Call debug_uart_putc() to output a character 1602f964aa7SSimon Glass 1612f964aa7SSimon Glass Depending on your platform it may be possible to use this UART before 1622f964aa7SSimon Glass a stack is available. 1632f964aa7SSimon Glass 1642f964aa7SSimon Glass If your UART does not support this interface you can probably add 1652f964aa7SSimon Glass support quite easily. Remember that you cannot use driver model and 1662f964aa7SSimon Glass it is preferred to use no stack. 1672f964aa7SSimon Glass 1682f964aa7SSimon Glass You must not use this UART once driver model is working and the 1692f964aa7SSimon Glass serial drivers are up and running (done in serial_init()). Otherwise 1702f964aa7SSimon Glass the drivers may conflict and you will get strange output. 1712f964aa7SSimon Glass 17221d00436SSimon Glasschoice 17321d00436SSimon Glass prompt "Select which UART will provide the debug UART" 17421d00436SSimon Glass depends on DEBUG_UART 175b1e361b6SThomas Chou default DEBUG_UART_NS16550 17621d00436SSimon Glass 177220e8021SThomas Chouconfig DEBUG_UART_ALTERA_JTAGUART 178220e8021SThomas Chou bool "Altera JTAG UART" 179220e8021SThomas Chou help 180220e8021SThomas Chou Select this to enable a debug UART using the altera_jtag_uart driver. 181220e8021SThomas Chou You will need to provide parameters to make this work. The driver will 182220e8021SThomas Chou be available until the real driver model serial is running. 183220e8021SThomas Chou 184da2f838dSThomas Chouconfig DEBUG_UART_ALTERA_UART 185da2f838dSThomas Chou bool "Altera UART" 186da2f838dSThomas Chou help 187da2f838dSThomas Chou Select this to enable a debug UART using the altera_uart driver. 188da2f838dSThomas Chou You will need to provide parameters to make this work. The driver will 189da2f838dSThomas Chou be available until the real driver model serial is running. 190da2f838dSThomas Chou 19160b49761SWills Wangconfig DEBUG_UART_AR933X 19260b49761SWills Wang bool "QCA/Atheros ar933x" 19360b49761SWills Wang depends on AR933X_UART 19460b49761SWills Wang help 19560b49761SWills Wang Select this to enable a debug UART using the ar933x uart driver. 19660b49761SWills Wang You will need to provide parameters to make this work. The 19760b49761SWills Wang driver will be available until the real driver model serial is 19860b49761SWills Wang running. 19960b49761SWills Wang 200998cf3c2SWenyou Yangconfig DEBUG_UART_ATMEL 201998cf3c2SWenyou Yang bool "Atmel USART" 202998cf3c2SWenyou Yang help 203998cf3c2SWenyou Yang Select this to enable a debug UART using the atmel usart driver. You 204998cf3c2SWenyou Yang will need to provide parameters to make this work. The driver will 205998cf3c2SWenyou Yang be available until the real driver-model serial is running. 206998cf3c2SWenyou Yang 20730581040SÁlvaro Fernández Rojasconfig DEBUG_UART_BCM6345 20830581040SÁlvaro Fernández Rojas bool "BCM6345 UART" 20930581040SÁlvaro Fernández Rojas depends on BCM6345_SERIAL 21030581040SÁlvaro Fernández Rojas help 21130581040SÁlvaro Fernández Rojas Select this to enable a debug UART on BCM6345 SoCs. You 21230581040SÁlvaro Fernández Rojas will need to provide parameters to make this work. The driver will 21330581040SÁlvaro Fernández Rojas be available until the real driver model serial is running. 21430581040SÁlvaro Fernández Rojas 21521d00436SSimon Glassconfig DEBUG_UART_NS16550 21621d00436SSimon Glass bool "ns16550" 21721d00436SSimon Glass help 21821d00436SSimon Glass Select this to enable a debug UART using the ns16550 driver. You 21921d00436SSimon Glass will need to provide parameters to make this work. The driver will 22021d00436SSimon Glass be available until the real driver model serial is running. 22121d00436SSimon Glass 222275854baSSimon Glassconfig DEBUG_EFI_CONSOLE 223275854baSSimon Glass bool "EFI" 224275854baSSimon Glass depends on EFI_APP 225275854baSSimon Glass help 226275854baSSimon Glass Select this to enable a debug console which calls back to EFI to 227275854baSSimon Glass output to the console. This can be useful for early debugging of 228275854baSSimon Glass U-Boot when running on top of EFI (Extensive Firmware Interface). 229275854baSSimon Glass This is a type of BIOS used by PCs. 230275854baSSimon Glass 231bf6e7022SSimon Glassconfig DEBUG_UART_S5P 232bf6e7022SSimon Glass bool "Samsung S5P" 233bf6e7022SSimon Glass help 234bf6e7022SSimon Glass Select this to enable a debug UART using the serial_s5p driver. You 235bf6e7022SSimon Glass will need to provide parameters to make this work. The driver will 236bf6e7022SSimon Glass be available until the real driver-model serial is running. 237bf6e7022SSimon Glass 238bfcef28aSBeniamino Galvaniconfig DEBUG_UART_MESON 239bfcef28aSBeniamino Galvani bool "Amlogic Meson" 240bfcef28aSBeniamino Galvani depends on MESON_SERIAL 241bfcef28aSBeniamino Galvani help 242bfcef28aSBeniamino Galvani Select this to enable a debug UART using the serial_meson driver. You 243bfcef28aSBeniamino Galvani will need to provide parameters to make this work. The driver will 244bfcef28aSBeniamino Galvani be available until the real driver-model serial is running. 245bfcef28aSBeniamino Galvani 2464166ba3bSMichal Simekconfig DEBUG_UART_UARTLITE 2474166ba3bSMichal Simek bool "Xilinx Uartlite" 2484166ba3bSMichal Simek help 2494166ba3bSMichal Simek Select this to enable a debug UART using the serial_uartlite driver. 2504166ba3bSMichal Simek You will need to provide parameters to make this work. The driver will 2514166ba3bSMichal Simek be available until the real driver-model serial is running. 2524166ba3bSMichal Simek 253966bfa73SMichal Simekconfig DEBUG_UART_ARM_DCC 254966bfa73SMichal Simek bool "ARM DCC" 255966bfa73SMichal Simek help 256966bfa73SMichal Simek Select this to enable a debug UART using the ARM JTAG DCC port. 257966bfa73SMichal Simek The DCC port can be used for very early debugging and doesn't require 258966bfa73SMichal Simek any additional setting like address/baudrate/clock. On systems without 259966bfa73SMichal Simek any serial interface this is the easiest way how to get console. 260966bfa73SMichal Simek Every ARM core has own DCC port which is the part of debug interface. 261966bfa73SMichal Simek This port is available at least on ARMv6, ARMv7, ARMv8 and XScale 262966bfa73SMichal Simek architectures. 263966bfa73SMichal Simek 2646985d496SStefan Roeseconfig DEBUG_MVEBU_A3700_UART 2656985d496SStefan Roese bool "Marvell Armada 3700" 2666985d496SStefan Roese help 2676985d496SStefan Roese Select this to enable a debug UART using the serial_mvebu driver. You 2686985d496SStefan Roese will need to provide parameters to make this work. The driver will 2696985d496SStefan Roese be available until the real driver-model serial is running. 2706985d496SStefan Roese 271c54c0a4cSSimon Glassconfig DEBUG_UART_ZYNQ 272c54c0a4cSSimon Glass bool "Xilinx Zynq" 273c54c0a4cSSimon Glass help 2746bf87dacSMichal Simek Select this to enable a debug UART using the serial_zynq driver. You 275c54c0a4cSSimon Glass will need to provide parameters to make this work. The driver will 276c54c0a4cSSimon Glass be available until the real driver-model serial is running. 277c54c0a4cSSimon Glass 278e43ce3fcSFrancois Retiefconfig DEBUG_UART_APBUART 279e43ce3fcSFrancois Retief depends on LEON3 280e43ce3fcSFrancois Retief bool "Gaisler APBUART" 281e43ce3fcSFrancois Retief help 282e43ce3fcSFrancois Retief Select this to enable a debug UART using the serial_leon3 driver. You 283e43ce3fcSFrancois Retief will need to provide parameters to make this work. The driver will 284e43ce3fcSFrancois Retief be available until the real driver model serial is running. 285e43ce3fcSFrancois Retief 28619de8150SSergey Temerkhanovconfig DEBUG_UART_PL010 28719de8150SSergey Temerkhanov bool "pl010" 28819de8150SSergey Temerkhanov help 28919de8150SSergey Temerkhanov Select this to enable a debug UART using the pl01x driver with the 29019de8150SSergey Temerkhanov PL010 UART type. You will need to provide parameters to make this 29119de8150SSergey Temerkhanov work. The driver will be available until the real driver model 29219de8150SSergey Temerkhanov serial is running. 29319de8150SSergey Temerkhanov 29419de8150SSergey Temerkhanovconfig DEBUG_UART_PL011 29519de8150SSergey Temerkhanov bool "pl011" 29619de8150SSergey Temerkhanov help 29719de8150SSergey Temerkhanov Select this to enable a debug UART using the pl01x driver with the 29819de8150SSergey Temerkhanov PL011 UART type. You will need to provide parameters to make this 29919de8150SSergey Temerkhanov work. The driver will be available until the real driver model 30019de8150SSergey Temerkhanov serial is running. 30119de8150SSergey Temerkhanov 3029e160ee8SPaul Thackerconfig DEBUG_UART_PIC32 3039e160ee8SPaul Thacker bool "Microchip PIC32" 3049e160ee8SPaul Thacker depends on PIC32_SERIAL 3059e160ee8SPaul Thacker help 3069e160ee8SPaul Thacker Select this to enable a debug UART using the serial_pic32 driver. You 3079e160ee8SPaul Thacker will need to provide parameters to make this work. The driver will 3089e160ee8SPaul Thacker be available until the real driver model serial is running. 3099e160ee8SPaul Thacker 31061366b71SJagan Tekiconfig DEBUG_UART_MXC 31161366b71SJagan Teki bool "IMX Serial port" 31261366b71SJagan Teki depends on MXC_UART 31361366b71SJagan Teki help 31461366b71SJagan Teki Select this to enable a debug UART using the serial_mxc driver. You 31561366b71SJagan Teki will need to provide parameters to make this work. The driver will 31661366b71SJagan Teki be available until the real driver model serial is running. 31761366b71SJagan Teki 318d5cf3297SMasahiro Yamadaconfig DEBUG_UART_UNIPHIER 319d5cf3297SMasahiro Yamada bool "UniPhier on-chip UART" 320d5cf3297SMasahiro Yamada depends on ARCH_UNIPHIER 321d5cf3297SMasahiro Yamada help 322d5cf3297SMasahiro Yamada Select this to enable a debug UART using the UniPhier on-chip UART. 323d5cf3297SMasahiro Yamada You will need to provide DEBUG_UART_BASE to make this work. The 324d5cf3297SMasahiro Yamada driver will be available until the real driver-model serial is 325d5cf3297SMasahiro Yamada running. 326d5cf3297SMasahiro Yamada 327a52cf086SLokesh Vutlaconfig DEBUG_UART_OMAP 328a52cf086SLokesh Vutla bool "OMAP uart" 329a52cf086SLokesh Vutla help 330a52cf086SLokesh Vutla Select this to enable a debug UART using the omap ns16550 driver. 331a52cf086SLokesh Vutla You will need to provide parameters to make this work. The driver 332a52cf086SLokesh Vutla will be available until the real driver model serial is running. 333a52cf086SLokesh Vutla 33421d00436SSimon Glassendchoice 33521d00436SSimon Glass 3362f964aa7SSimon Glassconfig DEBUG_UART_BASE 3372f964aa7SSimon Glass hex "Base address of UART" 3382f964aa7SSimon Glass depends on DEBUG_UART 3392f964aa7SSimon Glass help 3402f964aa7SSimon Glass This is the base address of your UART for memory-mapped UARTs. 3412f964aa7SSimon Glass 3422f964aa7SSimon Glass A default should be provided by your board, but if not you will need 3432f964aa7SSimon Glass to use the correct value here. 3442f964aa7SSimon Glass 3452f964aa7SSimon Glassconfig DEBUG_UART_CLOCK 3462f964aa7SSimon Glass int "UART input clock" 3472f964aa7SSimon Glass depends on DEBUG_UART 3482f964aa7SSimon Glass help 3492f964aa7SSimon Glass The UART input clock determines the speed of the internal UART 3502f964aa7SSimon Glass circuitry. The baud rate is derived from this by dividing the input 3512f964aa7SSimon Glass clock down. 3522f964aa7SSimon Glass 3532f964aa7SSimon Glass A default should be provided by your board, but if not you will need 3542f964aa7SSimon Glass to use the correct value here. 3552f964aa7SSimon Glass 356dd0b0122SSimon Glassconfig DEBUG_UART_SHIFT 357dd0b0122SSimon Glass int "UART register shift" 358dd0b0122SSimon Glass depends on DEBUG_UART 359dd0b0122SSimon Glass default 0 if DEBUG_UART 360dd0b0122SSimon Glass help 361dd0b0122SSimon Glass Some UARTs (notably ns16550) support different register layouts 362dd0b0122SSimon Glass where the registers are spaced either as bytes, words or some other 363dd0b0122SSimon Glass value. Use this value to specify the shift to use, where 0=byte 364dd0b0122SSimon Glass registers, 2=32-bit word registers, etc. 365dd0b0122SSimon Glass 3660e977bc1SSimon Glassconfig DEBUG_UART_BOARD_INIT 3670e977bc1SSimon Glass bool "Enable board-specific debug UART init" 3680e977bc1SSimon Glass depends on DEBUG_UART 3690e977bc1SSimon Glass help 3700e977bc1SSimon Glass Some boards need to set things up before the debug UART can be used. 3710e977bc1SSimon Glass On these boards a call to debug_uart_init() is insufficient. When 3720e977bc1SSimon Glass this option is enabled, the function board_debug_uart_init() will 3730e977bc1SSimon Glass be called when debug_uart_init() is called. You can put any code 3740e977bc1SSimon Glass here that is needed to set up the UART ready for use, such as set 3750e977bc1SSimon Glass pin multiplexing or enable clocks. 3760e977bc1SSimon Glass 377c7fefcb9SSimon Glassconfig DEBUG_UART_ANNOUNCE 378c7fefcb9SSimon Glass bool "Show a message when the debug UART starts up" 379c7fefcb9SSimon Glass depends on DEBUG_UART 380c7fefcb9SSimon Glass help 381c7fefcb9SSimon Glass Enable this option to show a message when the debug UART is ready 382c7fefcb9SSimon Glass for use. You will see a message like "<debug_uart> " as soon as 383c7fefcb9SSimon Glass U-Boot has the UART ready for use (i.e. your code calls 384c7fefcb9SSimon Glass debug_uart_init()). This can be useful just as a check that 385c7fefcb9SSimon Glass everything is working. 386c7fefcb9SSimon Glass 38719de8150SSergey Temerkhanovconfig DEBUG_UART_SKIP_INIT 38819de8150SSergey Temerkhanov bool "Skip UART initialization" 38919de8150SSergey Temerkhanov help 39019de8150SSergey Temerkhanov Select this if the UART you want to use for debug output is already 39119de8150SSergey Temerkhanov initialized by the time U-Boot starts its execution. 39219de8150SSergey Temerkhanov 393220e8021SThomas Chouconfig ALTERA_JTAG_UART 394220e8021SThomas Chou bool "Altera JTAG UART support" 395220e8021SThomas Chou depends on DM_SERIAL 396220e8021SThomas Chou help 397220e8021SThomas Chou Select this to enable an JTAG UART for Altera devices.The JTAG UART 398220e8021SThomas Chou core implements a method to communicate serial character streams 399220e8021SThomas Chou between a host PC and a Qsys system on an Altera FPGA. Please find 400220e8021SThomas Chou details on the "Embedded Peripherals IP User Guide" of Altera. 401220e8021SThomas Chou 402220e8021SThomas Chouconfig ALTERA_JTAG_UART_BYPASS 403220e8021SThomas Chou bool "Bypass output when no connection" 404220e8021SThomas Chou depends on ALTERA_JTAG_UART 405220e8021SThomas Chou help 406220e8021SThomas Chou Bypass console output and keep going even if there is no JTAG 407220e8021SThomas Chou terminal connection with the host. The console output will resume 408220e8021SThomas Chou once the JTAG terminal is connected. Without the bypass, the console 409220e8021SThomas Chou output will wait forever until a JTAG terminal is connected. If you 410220e8021SThomas Chou not are sure, say Y. 411220e8021SThomas Chou 412da2f838dSThomas Chouconfig ALTERA_UART 413da2f838dSThomas Chou bool "Altera UART support" 414da2f838dSThomas Chou depends on DM_SERIAL 415da2f838dSThomas Chou help 416da2f838dSThomas Chou Select this to enable an UART for Altera devices. Please find 417da2f838dSThomas Chou details on the "Embedded Peripherals IP User Guide" of Altera. 418da2f838dSThomas Chou 41960b49761SWills Wangconfig AR933X_UART 42060b49761SWills Wang bool "QCA/Atheros ar933x UART support" 42160b49761SWills Wang depends on DM_SERIAL && SOC_AR933X 42260b49761SWills Wang help 42360b49761SWills Wang Select this to enable UART support for QCA/Atheros ar933x 42460b49761SWills Wang devices. This driver uses driver model and requires a device 42560b49761SWills Wang tree binding to operate, please refer to the document at 42660b49761SWills Wang doc/device-tree-bindings/serial/qca,ar9330-uart.txt. 42760b49761SWills Wang 428*d7ac185fSAlexey Brodkinconfig ARC_SERIAL 429*d7ac185fSAlexey Brodkin bool "ARC UART support" 430*d7ac185fSAlexey Brodkin depends on DM_SERIAL 431*d7ac185fSAlexey Brodkin help 432*d7ac185fSAlexey Brodkin Select this to enable support for ARC UART now typically 433*d7ac185fSAlexey Brodkin only used in Synopsys DesignWare ARC simulators like nSIM. 434*d7ac185fSAlexey Brodkin 4356ec739aaSWenyou Yangconfig ATMEL_USART 4366ec739aaSWenyou Yang bool "Atmel USART support" 4376ec739aaSWenyou Yang help 4386ec739aaSWenyou Yang Select this to enable USART support for Atmel SoCs. It can be 4396ec739aaSWenyou Yang configured in the device tree, and input clock frequency can 4406ec739aaSWenyou Yang be got from the clk node. 4416ec739aaSWenyou Yang 442fa487594SAlexander Grafconfig BCM283X_MU_SERIAL 443fa487594SAlexander Graf bool "Support for BCM283x Mini-UART" 444fa487594SAlexander Graf depends on DM_SERIAL && ARCH_BCM283X 445fa487594SAlexander Graf default y 446fa487594SAlexander Graf help 447fa487594SAlexander Graf Select this to enable Mini-UART support on BCM283X family of SoCs. 448fa487594SAlexander Graf 4496001985fSAlexander Grafconfig BCM283X_PL011_SERIAL 4506001985fSAlexander Graf bool "Support for BCM283x PL011 UART" 4516001985fSAlexander Graf depends on PL01X_SERIAL && ARCH_BCM283X 4526001985fSAlexander Graf default y 4536001985fSAlexander Graf help 4546001985fSAlexander Graf Select this to enable an overriding PL011 driver for BCM283X SoCs 4556001985fSAlexander Graf that supports automatic disable, so that it only gets used when 4566001985fSAlexander Graf the UART is actually muxed. 4576001985fSAlexander Graf 45830581040SÁlvaro Fernández Rojasconfig BCM6345_SERIAL 45930581040SÁlvaro Fernández Rojas bool "Support for BCM6345 UART" 46030581040SÁlvaro Fernández Rojas depends on DM_SERIAL && ARCH_BMIPS 46130581040SÁlvaro Fernández Rojas help 46230581040SÁlvaro Fernández Rojas Select this to enable UART on BCM6345 SoCs. 46330581040SÁlvaro Fernández Rojas 464fac379e1STuomas Tynkkynenconfig FSL_LINFLEXUART 465fac379e1STuomas Tynkkynen bool "Freescale Linflex UART support" 466fac379e1STuomas Tynkkynen depends on DM_SERIAL 467fac379e1STuomas Tynkkynen help 468fac379e1STuomas Tynkkynen Select this to enable the Linflex serial module found on some 469fac379e1STuomas Tynkkynen NXP SoCs like S32V234. 470fac379e1STuomas Tynkkynen 4715ed07cf5SBin Mengconfig FSL_LPUART 4725ed07cf5SBin Meng bool "Freescale LPUART support" 4735ed07cf5SBin Meng help 4745ed07cf5SBin Meng Select this to enable a Low Power UART for Freescale VF610 and 4755ed07cf5SBin Meng QorIQ Layerscape devices. 4765ed07cf5SBin Meng 4776985d496SStefan Roeseconfig MVEBU_A3700_UART 4786985d496SStefan Roese bool "UART support for Armada 3700" 4796985d496SStefan Roese default n 4806985d496SStefan Roese help 4816985d496SStefan Roese Choose this option to add support for UART driver on the Marvell 4826985d496SStefan Roese Armada 3700 SoC. The base address is configured via DT. 4836985d496SStefan Roese 4848829e662SJagan Tekiconfig MXC_UART 4858829e662SJagan Teki bool "IMX serial port support" 48698d62e61SPatrick Bruenn depends on MX5 || MX6 4878829e662SJagan Teki help 4888829e662SJagan Teki If you have a machine based on a Motorola IMX CPU you 4898829e662SJagan Teki can enable its onboard serial port by enabling this option. 4908829e662SJagan Teki 491cac73f20SKeng Soon Cheahconfig NULLDEV_SERIAL 492cac73f20SKeng Soon Cheah bool "Null serial device" 493cac73f20SKeng Soon Cheah help 494cac73f20SKeng Soon Cheah Select this to enable null serial device support. A null serial 495cac73f20SKeng Soon Cheah device merely acts as a placeholder for a serial device and does 496cac73f20SKeng Soon Cheah nothing for all it's operation. 497cac73f20SKeng Soon Cheah 4989e160ee8SPaul Thackerconfig PIC32_SERIAL 4999e160ee8SPaul Thacker bool "Support for Microchip PIC32 on-chip UART" 5009e160ee8SPaul Thacker depends on DM_SERIAL && MACH_PIC32 5019e160ee8SPaul Thacker default y 5029e160ee8SPaul Thacker help 5039e160ee8SPaul Thacker Support for the UART found on Microchip PIC32 SoC's. 5049e160ee8SPaul Thacker 5059e39003eSThomas Chouconfig SYS_NS16550 5069e39003eSThomas Chou bool "NS16550 UART or compatible" 5079e39003eSThomas Chou help 5089e39003eSThomas Chou Support NS16550 UART or compatible. This can be enabled in the 5099e39003eSThomas Chou device tree with the correct input clock frequency. If the input 5109e39003eSThomas Chou clock frequency is not defined in the device tree, the macro 5119e39003eSThomas Chou CONFIG_SYS_NS16550_CLK defined in a legacy board header file will 5129e39003eSThomas Chou be used. It can be a constant or a function to get clock, eg, 5139e39003eSThomas Chou get_serial_clock(). 5149e39003eSThomas Chou 515c5f8dd48SAndy Shevchenkoconfig INTEL_MID_SERIAL 516c5f8dd48SAndy Shevchenko bool "Intel MID platform UART support" 517c5f8dd48SAndy Shevchenko depends on DM_SERIAL && OF_CONTROL 518c5f8dd48SAndy Shevchenko depends on INTEL_MID 519c5f8dd48SAndy Shevchenko select SYS_NS16550 520c5f8dd48SAndy Shevchenko help 521c5f8dd48SAndy Shevchenko Select this to enable a UART for Intel MID platforms. 522c5f8dd48SAndy Shevchenko This uses the ns16550 driver as a library. 523c5f8dd48SAndy Shevchenko 524884f9013SAlexander Grafconfig PL010_SERIAL 525884f9013SAlexander Graf bool "ARM PL010 driver" 526884f9013SAlexander Graf depends on !DM_SERIAL 527884f9013SAlexander Graf help 528884f9013SAlexander Graf Select this to enable a UART for platforms using PL010. 529884f9013SAlexander Graf 530d10fc50fSAlexander Grafconfig PL011_SERIAL 531d10fc50fSAlexander Graf bool "ARM PL011 driver" 532d10fc50fSAlexander Graf depends on !DM_SERIAL 533d10fc50fSAlexander Graf help 534d10fc50fSAlexander Graf Select this to enable a UART for platforms using PL011. 535d10fc50fSAlexander Graf 536cf2c7784SAlexander Grafconfig PL01X_SERIAL 537cf2c7784SAlexander Graf bool "ARM PL010 and PL011 driver" 538cf2c7784SAlexander Graf depends on DM_SERIAL 539cf2c7784SAlexander Graf help 540cf2c7784SAlexander Graf Select this to enable a UART for platforms using PL010 or PL011. 541cf2c7784SAlexander Graf 5422fc24d53SSimon Glassconfig ROCKCHIP_SERIAL 5432fc24d53SSimon Glass bool "Rockchip on-chip UART support" 5442fc24d53SSimon Glass depends on DM_SERIAL && SPL_OF_PLATDATA 5452fc24d53SSimon Glass help 5462fc24d53SSimon Glass Select this to enable a debug UART for Rockchip devices when using 5477f73ca48STom Rini CONFIG_SPL_OF_PLATDATA (i.e. a compiled-in device tree replacemenmt). 5482fc24d53SSimon Glass This uses the ns16550 driver, converting the platdata from of-platdata 5492fc24d53SSimon Glass to the ns16550 format. 5502fc24d53SSimon Glass 551af282245SSimon Glassconfig SANDBOX_SERIAL 552af282245SSimon Glass bool "Sandbox UART support" 5532ea65f3eSMasahiro Yamada depends on SANDBOX 554af282245SSimon Glass help 555af282245SSimon Glass Select this to enable a seral UART for sandbox. This is required to 556af282245SSimon Glass operate correctly, otherwise you will see no serial output from 557af282245SSimon Glass sandbox. The emulated UART will display to the console and console 558af282245SSimon Glass input will be fed into the UART. This allows you to interact with 559af282245SSimon Glass U-Boot. 560af282245SSimon Glass 561af282245SSimon Glass The operation of the console is controlled by the -t command-line 562af282245SSimon Glass flag. In raw mode, U-Boot sees all characters from the terminal 563af282245SSimon Glass before they are processed, including Ctrl-C. In cooked mode, Ctrl-C 564af282245SSimon Glass is processed by the terminal, and terminates U-Boot. Valid options 565af282245SSimon Glass are: 566af282245SSimon Glass 567af282245SSimon Glass -t raw-with-sigs Raw mode, Ctrl-C will terminate U-Boot 568af282245SSimon Glass -t raw Raw mode, Ctrl-C is processed by U-Boot 569af282245SSimon Glass -t cooked Cooked mode, Ctrl-C terminates 570af282245SSimon Glass 57103a38a39SMarek Vasutconfig SCIF_CONSOLE 57203a38a39SMarek Vasut bool "Renesas SCIF UART support" 57303a38a39SMarek Vasut depends on SH || ARCH_RMOBILE 57403a38a39SMarek Vasut help 57503a38a39SMarek Vasut Select this to enable Renesas SCIF UART. To operate serial ports 57603a38a39SMarek Vasut on systems with RCar or SH SoCs, say Y to this option. If unsure, 57703a38a39SMarek Vasut say N. 57803a38a39SMarek Vasut 579ff247b7aSMasahiro Yamadaconfig UNIPHIER_SERIAL 580b6ef3a3fSMasahiro Yamada bool "Support for UniPhier on-chip UART" 5812ea65f3eSMasahiro Yamada depends on ARCH_UNIPHIER 58285dc2fe1SMasahiro Yamada default y 583ff247b7aSMasahiro Yamada help 584b6ef3a3fSMasahiro Yamada If you have a UniPhier based board and want to use the on-chip 585b6ef3a3fSMasahiro Yamada serial ports, say Y to this option. If unsure, say N. 586dcfe4a54SSimon Glass 58754e24d33SMichal Simekconfig XILINX_UARTLITE 58854e24d33SMichal Simek bool "Xilinx Uarlite support" 58980cce262SRicardo Ribalda Delgado depends on DM_SERIAL && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || 4xx) 59054e24d33SMichal Simek help 59154e24d33SMichal Simek If you have a Xilinx based board and want to use the uartlite 59254e24d33SMichal Simek serial ports, say Y to this option. If unsure, say N. 59354e24d33SMichal Simek 594bfcef28aSBeniamino Galvaniconfig MESON_SERIAL 595bfcef28aSBeniamino Galvani bool "Support for Amlogic Meson UART" 596bfcef28aSBeniamino Galvani depends on DM_SERIAL && ARCH_MESON 597bfcef28aSBeniamino Galvani help 598bfcef28aSBeniamino Galvani If you have an Amlogic Meson based board and want to use the on-chip 599bfcef28aSBeniamino Galvani serial ports, say Y to this option. If unsure, say N. 600bfcef28aSBeniamino Galvani 601142a20c3SMateusz Kulikowskiconfig MSM_SERIAL 602142a20c3SMateusz Kulikowski bool "Qualcomm on-chip UART" 603142a20c3SMateusz Kulikowski depends on DM_SERIAL 604142a20c3SMateusz Kulikowski help 605142a20c3SMateusz Kulikowski Support Data Mover UART used on Qualcomm Snapdragon SoCs. 606142a20c3SMateusz Kulikowski It should support all Qualcomm devices with UARTDM version 1.4, 607142a20c3SMateusz Kulikowski for example APQ8016 and MSM8916. 608142a20c3SMateusz Kulikowski Single baudrate is supported in current implementation (115200). 6096985d496SStefan Roese 610d804a5e1SMarcel Ziswilerconfig PXA_SERIAL 611d804a5e1SMarcel Ziswiler bool "PXA serial port support" 612d804a5e1SMarcel Ziswiler help 613d804a5e1SMarcel Ziswiler If you have a machine based on a Marvell XScale PXA2xx CPU you 614d804a5e1SMarcel Ziswiler can enable its onboard serial ports by enabling this option. 615d804a5e1SMarcel Ziswiler 616214a17e6SPatrice Chotardconfig STI_ASC_SERIAL 617214a17e6SPatrice Chotard bool "STMicroelectronics on-chip UART" 618214a17e6SPatrice Chotard depends on DM_SERIAL && ARCH_STI 619214a17e6SPatrice Chotard help 620214a17e6SPatrice Chotard Select this to enable Asynchronous Serial Controller available 621214a17e6SPatrice Chotard on STiH410 SoC. This is a basic implementation, it supports 622214a17e6SPatrice Chotard following baudrate 9600, 19200, 38400, 57600 and 115200. 623214a17e6SPatrice Chotard 624ae74de0dSPatrice Chotardconfig STM32_SERIAL 62584e9dcc1SPatrice Chotard bool "STMicroelectronics STM32 SoCs on-chip UART" 6262514c2d0SPatrick Delaunay depends on DM_SERIAL && (STM32F4 || STM32F7 || STM32H7 || ARCH_STM32MP) 62784e9dcc1SPatrice Chotard help 6282514c2d0SPatrick Delaunay If you have a machine based on a STM32 F4, F7, H7 or MP1 SOC 6292514c2d0SPatrick Delaunay you can enable its onboard serial ports, say Y to this option. 630776b2ddbSPatrice Chotard If unsure, say N. 63184e9dcc1SPatrice Chotard 632809704ebSMichal Simekconfig ZYNQ_SERIAL 633809704ebSMichal Simek bool "Cadence (Xilinx Zynq) UART support" 6341d6c54ecSMichal Simek depends on DM_SERIAL && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || ARCH_ZYNQMP_R5) 635809704ebSMichal Simek help 636809704ebSMichal Simek This driver supports the Cadence UART. It is found e.g. in Xilinx 637809704ebSMichal Simek Zynq/ZynqMP. 638809704ebSMichal Simek 639dd7ff472SChristophe Leroyconfig MPC8XX_CONS 640dd7ff472SChristophe Leroy bool "Console driver for MPC8XX" 641ee1e600cSChristophe Leroy depends on MPC8xx 642dd7ff472SChristophe Leroy default y 643dd7ff472SChristophe Leroy 644dd7ff472SChristophe Leroychoice 645dd7ff472SChristophe Leroy prompt "Console port" 646dd7ff472SChristophe Leroy default 8xx_CONS_SMC1 647dd7ff472SChristophe Leroy depends on MPC8XX_CONS 648dd7ff472SChristophe Leroy help 649dd7ff472SChristophe Leroy Depending on board, select one serial port 650dd7ff472SChristophe Leroy (CONFIG_8xx_CONS_SMC1 or CONFIG_8xx_CONS_SMC2) 651dd7ff472SChristophe Leroy 652dd7ff472SChristophe Leroyconfig 8xx_CONS_SMC1 653dd7ff472SChristophe Leroy bool "SMC1" 654dd7ff472SChristophe Leroy 655dd7ff472SChristophe Leroyconfig 8xx_CONS_SMC2 656dd7ff472SChristophe Leroy bool "SMC2" 657dd7ff472SChristophe Leroy 658dd7ff472SChristophe Leroyendchoice 659dd7ff472SChristophe Leroy 660dd7ff472SChristophe Leroyconfig SYS_SMC_RXBUFLEN 661dd7ff472SChristophe Leroy int "Console Rx buffer length" 662dd7ff472SChristophe Leroy depends on MPC8XX_CONS 663dd7ff472SChristophe Leroy default 1 664dd7ff472SChristophe Leroy help 665dd7ff472SChristophe Leroy With CONFIG_SYS_SMC_RXBUFLEN it is possible to define 666dd7ff472SChristophe Leroy the maximum receive buffer length for the SMC. 667dd7ff472SChristophe Leroy This option is actual only for 8xx possible. 668dd7ff472SChristophe Leroy If using CONFIG_SYS_SMC_RXBUFLEN also CONFIG_SYS_MAXIDLE 669dd7ff472SChristophe Leroy must be defined, to setup the maximum idle timeout for 670dd7ff472SChristophe Leroy the SMC. 671dd7ff472SChristophe Leroy 672dd7ff472SChristophe Leroyconfig SYS_MAXIDLE 673dd7ff472SChristophe Leroy int "maximum idle timeout" 674dd7ff472SChristophe Leroy depends on MPC8XX_CONS 675dd7ff472SChristophe Leroy default 0 676dd7ff472SChristophe Leroy 677dd7ff472SChristophe Leroyconfig SYS_BRGCLK_PRESCALE 678dd7ff472SChristophe Leroy int "BRG Clock Prescale" 679dd7ff472SChristophe Leroy depends on MPC8XX_CONS 680dd7ff472SChristophe Leroy default 1 681dd7ff472SChristophe Leroy 682dd7ff472SChristophe Leroyconfig SYS_SDSR 683dd7ff472SChristophe Leroy hex "SDSR Value" 684dd7ff472SChristophe Leroy depends on MPC8XX_CONS 685dd7ff472SChristophe Leroy default 0x83 686dd7ff472SChristophe Leroy 687dd7ff472SChristophe Leroyconfig SYS_SDMR 688dd7ff472SChristophe Leroy hex "SDMR Value" 689dd7ff472SChristophe Leroy depends on MPC8XX_CONS 690dd7ff472SChristophe Leroy default 0 691dd7ff472SChristophe Leroy 6920b11dbf7SMasahiro Yamadaendmenu 693