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 2792c55b68SSimon Glassconfig SERIAL_PRESENT 2892c55b68SSimon Glass bool "Provide a serial driver" 2992c55b68SSimon Glass depends on DM_SERIAL 3092c55b68SSimon Glass default y 3192c55b68SSimon Glass help 3292c55b68SSimon Glass In very space-constrained devices even the full UART driver is too 3392c55b68SSimon Glass large. In this case the debug UART can still be used in some cases. 3492c55b68SSimon Glass This option enables the full UART in U-Boot, so if is it disabled, 3592c55b68SSimon Glass the full UART driver will be omitted, thus saving space. 3692c55b68SSimon Glass 3792c55b68SSimon Glassconfig SPL_SERIAL_PRESENT 3892c55b68SSimon Glass bool "Provide a serial driver in SPL" 3992c55b68SSimon Glass depends on DM_SERIAL 4092c55b68SSimon Glass default y 4192c55b68SSimon Glass help 4292c55b68SSimon Glass In very space-constrained devices even the full UART driver is too 4392c55b68SSimon Glass large. In this case the debug UART can still be used in some cases. 4492c55b68SSimon Glass This option enables the full UART in SPL, so if is it disabled, 4592c55b68SSimon Glass the full UART driver will be omitted, thus saving space. 4692c55b68SSimon Glass 477095f864SMylène Josserandconfig CONS_INDEX 487095f864SMylène Josserand int "UART used for console" 497095f864SMylène Josserand depends on ARCH_SUNXI 507095f864SMylène Josserand default 2 if MACH_SUN5I 51e8f86a02SIcenowy Zheng default 5 if MACH_SUN8I_A23 || MACH_SUN8I_A33 527095f864SMylène Josserand default 1 537095f864SMylène Josserand help 547095f864SMylène Josserand Configures the console index. 55e8f86a02SIcenowy Zheng For Allwinner SoC., default values are 2 for SUN5I and 5 for A23/A33. 567095f864SMylène Josserand Otherwise, the index equals 1. 577095f864SMylène Josserand 58da333ae7SMasahiro Yamadaconfig DM_SERIAL 59da333ae7SMasahiro Yamada bool "Enable Driver Model for serial drivers" 60da333ae7SMasahiro Yamada depends on DM 61da333ae7SMasahiro Yamada help 62f94a1bedSSimon Glass Enable driver model for serial. This replaces 63f94a1bedSSimon Glass drivers/serial/serial.c with the serial uclass, which 64f94a1bedSSimon Glass implements serial_putc() etc. The uclass interface is 65f94a1bedSSimon Glass defined in include/serial.h. 66ff247b7aSMasahiro Yamada 673ca7a06aSStefan Roeseconfig SERIAL_RX_BUFFER 683ca7a06aSStefan Roese bool "Enable RX buffer for serial input" 693ca7a06aSStefan Roese depends on DM_SERIAL 703ca7a06aSStefan Roese help 713ca7a06aSStefan Roese Enable RX buffer support for the serial driver. This enables 723ca7a06aSStefan Roese pasting longer strings, even when the RX FIFO of the UART is 733ca7a06aSStefan Roese not big enough (e.g. 16 bytes on the normal NS16550). 743ca7a06aSStefan Roese 753ca7a06aSStefan Roeseconfig SERIAL_RX_BUFFER_SIZE 763ca7a06aSStefan Roese int "RX buffer size" 773ca7a06aSStefan Roese depends on SERIAL_RX_BUFFER 783ca7a06aSStefan Roese default 256 793ca7a06aSStefan Roese help 803ca7a06aSStefan Roese The size of the RX buffer (needs to be power of 2) 813ca7a06aSStefan Roese 82*ae5326a6SAlexander Grafconfig SERIAL_SEARCH_ALL 83*ae5326a6SAlexander Graf bool "Search for serial devices after default one failed" 84*ae5326a6SAlexander Graf depends on DM_SERIAL 85*ae5326a6SAlexander Graf help 86*ae5326a6SAlexander Graf The serial subsystem only searches for a single serial device 87*ae5326a6SAlexander Graf that was instantiated, but does not check whether it was probed 88*ae5326a6SAlexander Graf correctly. With this option set, we make successful probing 89*ae5326a6SAlexander Graf mandatory and search for fallback serial devices if the default 90*ae5326a6SAlexander Graf device does not work. 91*ae5326a6SAlexander Graf 92*ae5326a6SAlexander Graf If unsure, say N. 93*ae5326a6SAlexander Graf 94891f7ae6SSimon Glassconfig SPL_DM_SERIAL 950424990cSHeiko Schocher bool "Enable Driver Model for serial drivers in SPL" 96891f7ae6SSimon Glass depends on DM_SERIAL 97891f7ae6SSimon Glass default y if SPL && DM_SERIAL 98891f7ae6SSimon Glass help 99891f7ae6SSimon Glass Enable driver model for serial in SPL. This replaces 100891f7ae6SSimon Glass drivers/serial/serial.c with the serial uclass, which 101891f7ae6SSimon Glass implements serial_putc() etc. The uclass interface is 102891f7ae6SSimon Glass defined in include/serial.h. 103891f7ae6SSimon Glass 104891f7ae6SSimon Glassconfig TPL_DM_SERIAL 1050424990cSHeiko Schocher bool "Enable Driver Model for serial drivers in TPL" 106891f7ae6SSimon Glass depends on DM_SERIAL 107891f7ae6SSimon Glass default y if TPL && DM_SERIAL 108891f7ae6SSimon Glass help 109891f7ae6SSimon Glass Enable driver model for serial in TPL. This replaces 110891f7ae6SSimon Glass drivers/serial/serial.c with the serial uclass, which 111891f7ae6SSimon Glass implements serial_putc() etc. The uclass interface is 112891f7ae6SSimon Glass defined in include/serial.h. 113891f7ae6SSimon Glass 1142f964aa7SSimon Glassconfig DEBUG_UART 1152f964aa7SSimon Glass bool "Enable an early debug UART for debugging" 1162f964aa7SSimon Glass help 1172f964aa7SSimon Glass The debug UART is intended for use very early in U-Boot to debug 1182f964aa7SSimon Glass problems when an ICE or other debug mechanism is not available. 1192f964aa7SSimon Glass 1202f964aa7SSimon Glass To use it you should: 1212f964aa7SSimon Glass - Make sure your UART supports this interface 1222f964aa7SSimon Glass - Enable CONFIG_DEBUG_UART 1232f964aa7SSimon Glass - Enable the CONFIG for your UART to tell it to provide this interface 1242f964aa7SSimon Glass (e.g. CONFIG_DEBUG_UART_NS16550) 1252f964aa7SSimon Glass - Define the required settings as needed (see below) 1262f964aa7SSimon Glass - Call debug_uart_init() before use 1272f964aa7SSimon Glass - Call debug_uart_putc() to output a character 1282f964aa7SSimon Glass 1292f964aa7SSimon Glass Depending on your platform it may be possible to use this UART before 1302f964aa7SSimon Glass a stack is available. 1312f964aa7SSimon Glass 1322f964aa7SSimon Glass If your UART does not support this interface you can probably add 1332f964aa7SSimon Glass support quite easily. Remember that you cannot use driver model and 1342f964aa7SSimon Glass it is preferred to use no stack. 1352f964aa7SSimon Glass 1362f964aa7SSimon Glass You must not use this UART once driver model is working and the 1372f964aa7SSimon Glass serial drivers are up and running (done in serial_init()). Otherwise 1382f964aa7SSimon Glass the drivers may conflict and you will get strange output. 1392f964aa7SSimon Glass 14021d00436SSimon Glasschoice 14121d00436SSimon Glass prompt "Select which UART will provide the debug UART" 14221d00436SSimon Glass depends on DEBUG_UART 143b1e361b6SThomas Chou default DEBUG_UART_NS16550 14421d00436SSimon Glass 145220e8021SThomas Chouconfig DEBUG_UART_ALTERA_JTAGUART 146220e8021SThomas Chou bool "Altera JTAG UART" 147220e8021SThomas Chou help 148220e8021SThomas Chou Select this to enable a debug UART using the altera_jtag_uart driver. 149220e8021SThomas Chou You will need to provide parameters to make this work. The driver will 150220e8021SThomas Chou be available until the real driver model serial is running. 151220e8021SThomas Chou 152da2f838dSThomas Chouconfig DEBUG_UART_ALTERA_UART 153da2f838dSThomas Chou bool "Altera UART" 154da2f838dSThomas Chou help 155da2f838dSThomas Chou Select this to enable a debug UART using the altera_uart driver. 156da2f838dSThomas Chou You will need to provide parameters to make this work. The driver will 157da2f838dSThomas Chou be available until the real driver model serial is running. 158da2f838dSThomas Chou 15960b49761SWills Wangconfig DEBUG_UART_AR933X 16060b49761SWills Wang bool "QCA/Atheros ar933x" 16160b49761SWills Wang depends on AR933X_UART 16260b49761SWills Wang help 16360b49761SWills Wang Select this to enable a debug UART using the ar933x uart driver. 16460b49761SWills Wang You will need to provide parameters to make this work. The 16560b49761SWills Wang driver will be available until the real driver model serial is 16660b49761SWills Wang running. 16760b49761SWills Wang 168998cf3c2SWenyou Yangconfig DEBUG_UART_ATMEL 169998cf3c2SWenyou Yang bool "Atmel USART" 170998cf3c2SWenyou Yang help 171998cf3c2SWenyou Yang Select this to enable a debug UART using the atmel usart driver. You 172998cf3c2SWenyou Yang will need to provide parameters to make this work. The driver will 173998cf3c2SWenyou Yang be available until the real driver-model serial is running. 174998cf3c2SWenyou Yang 17530581040SÁlvaro Fernández Rojasconfig DEBUG_UART_BCM6345 17630581040SÁlvaro Fernández Rojas bool "BCM6345 UART" 17730581040SÁlvaro Fernández Rojas depends on BCM6345_SERIAL 17830581040SÁlvaro Fernández Rojas help 17930581040SÁlvaro Fernández Rojas Select this to enable a debug UART on BCM6345 SoCs. You 18030581040SÁlvaro Fernández Rojas will need to provide parameters to make this work. The driver will 18130581040SÁlvaro Fernández Rojas be available until the real driver model serial is running. 18230581040SÁlvaro Fernández Rojas 18321d00436SSimon Glassconfig DEBUG_UART_NS16550 18421d00436SSimon Glass bool "ns16550" 18521d00436SSimon Glass help 18621d00436SSimon Glass Select this to enable a debug UART using the ns16550 driver. You 18721d00436SSimon Glass will need to provide parameters to make this work. The driver will 18821d00436SSimon Glass be available until the real driver model serial is running. 18921d00436SSimon Glass 190275854baSSimon Glassconfig DEBUG_EFI_CONSOLE 191275854baSSimon Glass bool "EFI" 192275854baSSimon Glass depends on EFI_APP 193275854baSSimon Glass help 194275854baSSimon Glass Select this to enable a debug console which calls back to EFI to 195275854baSSimon Glass output to the console. This can be useful for early debugging of 196275854baSSimon Glass U-Boot when running on top of EFI (Extensive Firmware Interface). 197275854baSSimon Glass This is a type of BIOS used by PCs. 198275854baSSimon Glass 199bf6e7022SSimon Glassconfig DEBUG_UART_S5P 200bf6e7022SSimon Glass bool "Samsung S5P" 201bf6e7022SSimon Glass help 202bf6e7022SSimon Glass Select this to enable a debug UART using the serial_s5p driver. You 203bf6e7022SSimon Glass will need to provide parameters to make this work. The driver will 204bf6e7022SSimon Glass be available until the real driver-model serial is running. 205bf6e7022SSimon Glass 206bfcef28aSBeniamino Galvaniconfig DEBUG_UART_MESON 207bfcef28aSBeniamino Galvani bool "Amlogic Meson" 208bfcef28aSBeniamino Galvani depends on MESON_SERIAL 209bfcef28aSBeniamino Galvani help 210bfcef28aSBeniamino Galvani Select this to enable a debug UART using the serial_meson driver. You 211bfcef28aSBeniamino Galvani will need to provide parameters to make this work. The driver will 212bfcef28aSBeniamino Galvani be available until the real driver-model serial is running. 213bfcef28aSBeniamino Galvani 2144166ba3bSMichal Simekconfig DEBUG_UART_UARTLITE 2154166ba3bSMichal Simek bool "Xilinx Uartlite" 2164166ba3bSMichal Simek help 2174166ba3bSMichal Simek Select this to enable a debug UART using the serial_uartlite driver. 2184166ba3bSMichal Simek You will need to provide parameters to make this work. The driver will 2194166ba3bSMichal Simek be available until the real driver-model serial is running. 2204166ba3bSMichal Simek 221966bfa73SMichal Simekconfig DEBUG_UART_ARM_DCC 222966bfa73SMichal Simek bool "ARM DCC" 223966bfa73SMichal Simek help 224966bfa73SMichal Simek Select this to enable a debug UART using the ARM JTAG DCC port. 225966bfa73SMichal Simek The DCC port can be used for very early debugging and doesn't require 226966bfa73SMichal Simek any additional setting like address/baudrate/clock. On systems without 227966bfa73SMichal Simek any serial interface this is the easiest way how to get console. 228966bfa73SMichal Simek Every ARM core has own DCC port which is the part of debug interface. 229966bfa73SMichal Simek This port is available at least on ARMv6, ARMv7, ARMv8 and XScale 230966bfa73SMichal Simek architectures. 231966bfa73SMichal Simek 2326985d496SStefan Roeseconfig DEBUG_MVEBU_A3700_UART 2336985d496SStefan Roese bool "Marvell Armada 3700" 2346985d496SStefan Roese help 2356985d496SStefan Roese Select this to enable a debug UART using the serial_mvebu driver. You 2366985d496SStefan Roese will need to provide parameters to make this work. The driver will 2376985d496SStefan Roese be available until the real driver-model serial is running. 2386985d496SStefan Roese 239c54c0a4cSSimon Glassconfig DEBUG_UART_ZYNQ 240c54c0a4cSSimon Glass bool "Xilinx Zynq" 241c54c0a4cSSimon Glass help 2426bf87dacSMichal Simek Select this to enable a debug UART using the serial_zynq driver. You 243c54c0a4cSSimon Glass will need to provide parameters to make this work. The driver will 244c54c0a4cSSimon Glass be available until the real driver-model serial is running. 245c54c0a4cSSimon Glass 246e43ce3fcSFrancois Retiefconfig DEBUG_UART_APBUART 247e43ce3fcSFrancois Retief depends on LEON3 248e43ce3fcSFrancois Retief bool "Gaisler APBUART" 249e43ce3fcSFrancois Retief help 250e43ce3fcSFrancois Retief Select this to enable a debug UART using the serial_leon3 driver. You 251e43ce3fcSFrancois Retief will need to provide parameters to make this work. The driver will 252e43ce3fcSFrancois Retief be available until the real driver model serial is running. 253e43ce3fcSFrancois Retief 25419de8150SSergey Temerkhanovconfig DEBUG_UART_PL010 25519de8150SSergey Temerkhanov bool "pl010" 25619de8150SSergey Temerkhanov help 25719de8150SSergey Temerkhanov Select this to enable a debug UART using the pl01x driver with the 25819de8150SSergey Temerkhanov PL010 UART type. You will need to provide parameters to make this 25919de8150SSergey Temerkhanov work. The driver will be available until the real driver model 26019de8150SSergey Temerkhanov serial is running. 26119de8150SSergey Temerkhanov 26219de8150SSergey Temerkhanovconfig DEBUG_UART_PL011 26319de8150SSergey Temerkhanov bool "pl011" 26419de8150SSergey Temerkhanov help 26519de8150SSergey Temerkhanov Select this to enable a debug UART using the pl01x driver with the 26619de8150SSergey Temerkhanov PL011 UART type. You will need to provide parameters to make this 26719de8150SSergey Temerkhanov work. The driver will be available until the real driver model 26819de8150SSergey Temerkhanov serial is running. 26919de8150SSergey Temerkhanov 2709e160ee8SPaul Thackerconfig DEBUG_UART_PIC32 2719e160ee8SPaul Thacker bool "Microchip PIC32" 2729e160ee8SPaul Thacker depends on PIC32_SERIAL 2739e160ee8SPaul Thacker help 2749e160ee8SPaul Thacker Select this to enable a debug UART using the serial_pic32 driver. You 2759e160ee8SPaul Thacker will need to provide parameters to make this work. The driver will 2769e160ee8SPaul Thacker be available until the real driver model serial is running. 2779e160ee8SPaul Thacker 27861366b71SJagan Tekiconfig DEBUG_UART_MXC 27961366b71SJagan Teki bool "IMX Serial port" 28061366b71SJagan Teki depends on MXC_UART 28161366b71SJagan Teki help 28261366b71SJagan Teki Select this to enable a debug UART using the serial_mxc driver. You 28361366b71SJagan Teki will need to provide parameters to make this work. The driver will 28461366b71SJagan Teki be available until the real driver model serial is running. 28561366b71SJagan Teki 286d5cf3297SMasahiro Yamadaconfig DEBUG_UART_UNIPHIER 287d5cf3297SMasahiro Yamada bool "UniPhier on-chip UART" 288d5cf3297SMasahiro Yamada depends on ARCH_UNIPHIER 289d5cf3297SMasahiro Yamada help 290d5cf3297SMasahiro Yamada Select this to enable a debug UART using the UniPhier on-chip UART. 291d5cf3297SMasahiro Yamada You will need to provide DEBUG_UART_BASE to make this work. The 292d5cf3297SMasahiro Yamada driver will be available until the real driver-model serial is 293d5cf3297SMasahiro Yamada running. 294d5cf3297SMasahiro Yamada 295a52cf086SLokesh Vutlaconfig DEBUG_UART_OMAP 296a52cf086SLokesh Vutla bool "OMAP uart" 297a52cf086SLokesh Vutla help 298a52cf086SLokesh Vutla Select this to enable a debug UART using the omap ns16550 driver. 299a52cf086SLokesh Vutla You will need to provide parameters to make this work. The driver 300a52cf086SLokesh Vutla will be available until the real driver model serial is running. 301a52cf086SLokesh Vutla 30221d00436SSimon Glassendchoice 30321d00436SSimon Glass 3042f964aa7SSimon Glassconfig DEBUG_UART_BASE 3052f964aa7SSimon Glass hex "Base address of UART" 3062f964aa7SSimon Glass depends on DEBUG_UART 3072f964aa7SSimon Glass help 3082f964aa7SSimon Glass This is the base address of your UART for memory-mapped UARTs. 3092f964aa7SSimon Glass 3102f964aa7SSimon Glass A default should be provided by your board, but if not you will need 3112f964aa7SSimon Glass to use the correct value here. 3122f964aa7SSimon Glass 3132f964aa7SSimon Glassconfig DEBUG_UART_CLOCK 3142f964aa7SSimon Glass int "UART input clock" 3152f964aa7SSimon Glass depends on DEBUG_UART 3162f964aa7SSimon Glass help 3172f964aa7SSimon Glass The UART input clock determines the speed of the internal UART 3182f964aa7SSimon Glass circuitry. The baud rate is derived from this by dividing the input 3192f964aa7SSimon Glass clock down. 3202f964aa7SSimon Glass 3212f964aa7SSimon Glass A default should be provided by your board, but if not you will need 3222f964aa7SSimon Glass to use the correct value here. 3232f964aa7SSimon Glass 324dd0b0122SSimon Glassconfig DEBUG_UART_SHIFT 325dd0b0122SSimon Glass int "UART register shift" 326dd0b0122SSimon Glass depends on DEBUG_UART 327dd0b0122SSimon Glass default 0 if DEBUG_UART 328dd0b0122SSimon Glass help 329dd0b0122SSimon Glass Some UARTs (notably ns16550) support different register layouts 330dd0b0122SSimon Glass where the registers are spaced either as bytes, words or some other 331dd0b0122SSimon Glass value. Use this value to specify the shift to use, where 0=byte 332dd0b0122SSimon Glass registers, 2=32-bit word registers, etc. 333dd0b0122SSimon Glass 3340e977bc1SSimon Glassconfig DEBUG_UART_BOARD_INIT 3350e977bc1SSimon Glass bool "Enable board-specific debug UART init" 3360e977bc1SSimon Glass depends on DEBUG_UART 3370e977bc1SSimon Glass help 3380e977bc1SSimon Glass Some boards need to set things up before the debug UART can be used. 3390e977bc1SSimon Glass On these boards a call to debug_uart_init() is insufficient. When 3400e977bc1SSimon Glass this option is enabled, the function board_debug_uart_init() will 3410e977bc1SSimon Glass be called when debug_uart_init() is called. You can put any code 3420e977bc1SSimon Glass here that is needed to set up the UART ready for use, such as set 3430e977bc1SSimon Glass pin multiplexing or enable clocks. 3440e977bc1SSimon Glass 345c7fefcb9SSimon Glassconfig DEBUG_UART_ANNOUNCE 346c7fefcb9SSimon Glass bool "Show a message when the debug UART starts up" 347c7fefcb9SSimon Glass depends on DEBUG_UART 348c7fefcb9SSimon Glass help 349c7fefcb9SSimon Glass Enable this option to show a message when the debug UART is ready 350c7fefcb9SSimon Glass for use. You will see a message like "<debug_uart> " as soon as 351c7fefcb9SSimon Glass U-Boot has the UART ready for use (i.e. your code calls 352c7fefcb9SSimon Glass debug_uart_init()). This can be useful just as a check that 353c7fefcb9SSimon Glass everything is working. 354c7fefcb9SSimon Glass 35519de8150SSergey Temerkhanovconfig DEBUG_UART_SKIP_INIT 35619de8150SSergey Temerkhanov bool "Skip UART initialization" 35719de8150SSergey Temerkhanov help 35819de8150SSergey Temerkhanov Select this if the UART you want to use for debug output is already 35919de8150SSergey Temerkhanov initialized by the time U-Boot starts its execution. 36019de8150SSergey Temerkhanov 361220e8021SThomas Chouconfig ALTERA_JTAG_UART 362220e8021SThomas Chou bool "Altera JTAG UART support" 363220e8021SThomas Chou depends on DM_SERIAL 364220e8021SThomas Chou help 365220e8021SThomas Chou Select this to enable an JTAG UART for Altera devices.The JTAG UART 366220e8021SThomas Chou core implements a method to communicate serial character streams 367220e8021SThomas Chou between a host PC and a Qsys system on an Altera FPGA. Please find 368220e8021SThomas Chou details on the "Embedded Peripherals IP User Guide" of Altera. 369220e8021SThomas Chou 370220e8021SThomas Chouconfig ALTERA_JTAG_UART_BYPASS 371220e8021SThomas Chou bool "Bypass output when no connection" 372220e8021SThomas Chou depends on ALTERA_JTAG_UART 373220e8021SThomas Chou help 374220e8021SThomas Chou Bypass console output and keep going even if there is no JTAG 375220e8021SThomas Chou terminal connection with the host. The console output will resume 376220e8021SThomas Chou once the JTAG terminal is connected. Without the bypass, the console 377220e8021SThomas Chou output will wait forever until a JTAG terminal is connected. If you 378220e8021SThomas Chou not are sure, say Y. 379220e8021SThomas Chou 380da2f838dSThomas Chouconfig ALTERA_UART 381da2f838dSThomas Chou bool "Altera UART support" 382da2f838dSThomas Chou depends on DM_SERIAL 383da2f838dSThomas Chou help 384da2f838dSThomas Chou Select this to enable an UART for Altera devices. Please find 385da2f838dSThomas Chou details on the "Embedded Peripherals IP User Guide" of Altera. 386da2f838dSThomas Chou 38760b49761SWills Wangconfig AR933X_UART 38860b49761SWills Wang bool "QCA/Atheros ar933x UART support" 38960b49761SWills Wang depends on DM_SERIAL && SOC_AR933X 39060b49761SWills Wang help 39160b49761SWills Wang Select this to enable UART support for QCA/Atheros ar933x 39260b49761SWills Wang devices. This driver uses driver model and requires a device 39360b49761SWills Wang tree binding to operate, please refer to the document at 39460b49761SWills Wang doc/device-tree-bindings/serial/qca,ar9330-uart.txt. 39560b49761SWills Wang 3966ec739aaSWenyou Yangconfig ATMEL_USART 3976ec739aaSWenyou Yang bool "Atmel USART support" 3986ec739aaSWenyou Yang help 3996ec739aaSWenyou Yang Select this to enable USART support for Atmel SoCs. It can be 4006ec739aaSWenyou Yang configured in the device tree, and input clock frequency can 4016ec739aaSWenyou Yang be got from the clk node. 4026ec739aaSWenyou Yang 403fa487594SAlexander Grafconfig BCM283X_MU_SERIAL 404fa487594SAlexander Graf bool "Support for BCM283x Mini-UART" 405fa487594SAlexander Graf depends on DM_SERIAL && ARCH_BCM283X 406fa487594SAlexander Graf default y 407fa487594SAlexander Graf help 408fa487594SAlexander Graf Select this to enable Mini-UART support on BCM283X family of SoCs. 409fa487594SAlexander Graf 4106001985fSAlexander Grafconfig BCM283X_PL011_SERIAL 4116001985fSAlexander Graf bool "Support for BCM283x PL011 UART" 4126001985fSAlexander Graf depends on PL01X_SERIAL && ARCH_BCM283X 4136001985fSAlexander Graf default y 4146001985fSAlexander Graf help 4156001985fSAlexander Graf Select this to enable an overriding PL011 driver for BCM283X SoCs 4166001985fSAlexander Graf that supports automatic disable, so that it only gets used when 4176001985fSAlexander Graf the UART is actually muxed. 4186001985fSAlexander Graf 41930581040SÁlvaro Fernández Rojasconfig BCM6345_SERIAL 42030581040SÁlvaro Fernández Rojas bool "Support for BCM6345 UART" 42130581040SÁlvaro Fernández Rojas depends on DM_SERIAL && ARCH_BMIPS 42230581040SÁlvaro Fernández Rojas help 42330581040SÁlvaro Fernández Rojas Select this to enable UART on BCM6345 SoCs. 42430581040SÁlvaro Fernández Rojas 4255ed07cf5SBin Mengconfig FSL_LPUART 4265ed07cf5SBin Meng bool "Freescale LPUART support" 4275ed07cf5SBin Meng help 4285ed07cf5SBin Meng Select this to enable a Low Power UART for Freescale VF610 and 4295ed07cf5SBin Meng QorIQ Layerscape devices. 4305ed07cf5SBin Meng 4316985d496SStefan Roeseconfig MVEBU_A3700_UART 4326985d496SStefan Roese bool "UART support for Armada 3700" 4336985d496SStefan Roese default n 4346985d496SStefan Roese help 4356985d496SStefan Roese Choose this option to add support for UART driver on the Marvell 4366985d496SStefan Roese Armada 3700 SoC. The base address is configured via DT. 4376985d496SStefan Roese 4388829e662SJagan Tekiconfig MXC_UART 4398829e662SJagan Teki bool "IMX serial port support" 44098d62e61SPatrick Bruenn depends on MX5 || MX6 4418829e662SJagan Teki help 4428829e662SJagan Teki If you have a machine based on a Motorola IMX CPU you 4438829e662SJagan Teki can enable its onboard serial port by enabling this option. 4448829e662SJagan Teki 445cac73f20SKeng Soon Cheahconfig NULLDEV_SERIAL 446cac73f20SKeng Soon Cheah bool "Null serial device" 447cac73f20SKeng Soon Cheah help 448cac73f20SKeng Soon Cheah Select this to enable null serial device support. A null serial 449cac73f20SKeng Soon Cheah device merely acts as a placeholder for a serial device and does 450cac73f20SKeng Soon Cheah nothing for all it's operation. 451cac73f20SKeng Soon Cheah 4529e160ee8SPaul Thackerconfig PIC32_SERIAL 4539e160ee8SPaul Thacker bool "Support for Microchip PIC32 on-chip UART" 4549e160ee8SPaul Thacker depends on DM_SERIAL && MACH_PIC32 4559e160ee8SPaul Thacker default y 4569e160ee8SPaul Thacker help 4579e160ee8SPaul Thacker Support for the UART found on Microchip PIC32 SoC's. 4589e160ee8SPaul Thacker 4599e39003eSThomas Chouconfig SYS_NS16550 4609e39003eSThomas Chou bool "NS16550 UART or compatible" 4619e39003eSThomas Chou help 4629e39003eSThomas Chou Support NS16550 UART or compatible. This can be enabled in the 4639e39003eSThomas Chou device tree with the correct input clock frequency. If the input 4649e39003eSThomas Chou clock frequency is not defined in the device tree, the macro 4659e39003eSThomas Chou CONFIG_SYS_NS16550_CLK defined in a legacy board header file will 4669e39003eSThomas Chou be used. It can be a constant or a function to get clock, eg, 4679e39003eSThomas Chou get_serial_clock(). 4689e39003eSThomas Chou 469c5f8dd48SAndy Shevchenkoconfig INTEL_MID_SERIAL 470c5f8dd48SAndy Shevchenko bool "Intel MID platform UART support" 471c5f8dd48SAndy Shevchenko depends on DM_SERIAL && OF_CONTROL 472c5f8dd48SAndy Shevchenko depends on INTEL_MID 473c5f8dd48SAndy Shevchenko select SYS_NS16550 474c5f8dd48SAndy Shevchenko help 475c5f8dd48SAndy Shevchenko Select this to enable a UART for Intel MID platforms. 476c5f8dd48SAndy Shevchenko This uses the ns16550 driver as a library. 477c5f8dd48SAndy Shevchenko 478884f9013SAlexander Grafconfig PL010_SERIAL 479884f9013SAlexander Graf bool "ARM PL010 driver" 480884f9013SAlexander Graf depends on !DM_SERIAL 481884f9013SAlexander Graf help 482884f9013SAlexander Graf Select this to enable a UART for platforms using PL010. 483884f9013SAlexander Graf 484d10fc50fSAlexander Grafconfig PL011_SERIAL 485d10fc50fSAlexander Graf bool "ARM PL011 driver" 486d10fc50fSAlexander Graf depends on !DM_SERIAL 487d10fc50fSAlexander Graf help 488d10fc50fSAlexander Graf Select this to enable a UART for platforms using PL011. 489d10fc50fSAlexander Graf 490cf2c7784SAlexander Grafconfig PL01X_SERIAL 491cf2c7784SAlexander Graf bool "ARM PL010 and PL011 driver" 492cf2c7784SAlexander Graf depends on DM_SERIAL 493cf2c7784SAlexander Graf help 494cf2c7784SAlexander Graf Select this to enable a UART for platforms using PL010 or PL011. 495cf2c7784SAlexander Graf 4962fc24d53SSimon Glassconfig ROCKCHIP_SERIAL 4972fc24d53SSimon Glass bool "Rockchip on-chip UART support" 4982fc24d53SSimon Glass depends on DM_SERIAL && SPL_OF_PLATDATA 4992fc24d53SSimon Glass help 5002fc24d53SSimon Glass Select this to enable a debug UART for Rockchip devices when using 5017f73ca48STom Rini CONFIG_SPL_OF_PLATDATA (i.e. a compiled-in device tree replacemenmt). 5022fc24d53SSimon Glass This uses the ns16550 driver, converting the platdata from of-platdata 5032fc24d53SSimon Glass to the ns16550 format. 5042fc24d53SSimon Glass 505af282245SSimon Glassconfig SANDBOX_SERIAL 506af282245SSimon Glass bool "Sandbox UART support" 5072ea65f3eSMasahiro Yamada depends on SANDBOX 508af282245SSimon Glass help 509af282245SSimon Glass Select this to enable a seral UART for sandbox. This is required to 510af282245SSimon Glass operate correctly, otherwise you will see no serial output from 511af282245SSimon Glass sandbox. The emulated UART will display to the console and console 512af282245SSimon Glass input will be fed into the UART. This allows you to interact with 513af282245SSimon Glass U-Boot. 514af282245SSimon Glass 515af282245SSimon Glass The operation of the console is controlled by the -t command-line 516af282245SSimon Glass flag. In raw mode, U-Boot sees all characters from the terminal 517af282245SSimon Glass before they are processed, including Ctrl-C. In cooked mode, Ctrl-C 518af282245SSimon Glass is processed by the terminal, and terminates U-Boot. Valid options 519af282245SSimon Glass are: 520af282245SSimon Glass 521af282245SSimon Glass -t raw-with-sigs Raw mode, Ctrl-C will terminate U-Boot 522af282245SSimon Glass -t raw Raw mode, Ctrl-C is processed by U-Boot 523af282245SSimon Glass -t cooked Cooked mode, Ctrl-C terminates 524af282245SSimon Glass 52503a38a39SMarek Vasutconfig SCIF_CONSOLE 52603a38a39SMarek Vasut bool "Renesas SCIF UART support" 52703a38a39SMarek Vasut depends on SH || ARCH_RMOBILE 52803a38a39SMarek Vasut help 52903a38a39SMarek Vasut Select this to enable Renesas SCIF UART. To operate serial ports 53003a38a39SMarek Vasut on systems with RCar or SH SoCs, say Y to this option. If unsure, 53103a38a39SMarek Vasut say N. 53203a38a39SMarek Vasut 533ff247b7aSMasahiro Yamadaconfig UNIPHIER_SERIAL 534b6ef3a3fSMasahiro Yamada bool "Support for UniPhier on-chip UART" 5352ea65f3eSMasahiro Yamada depends on ARCH_UNIPHIER 53685dc2fe1SMasahiro Yamada default y 537ff247b7aSMasahiro Yamada help 538b6ef3a3fSMasahiro Yamada If you have a UniPhier based board and want to use the on-chip 539b6ef3a3fSMasahiro Yamada serial ports, say Y to this option. If unsure, say N. 540dcfe4a54SSimon Glass 54154e24d33SMichal Simekconfig XILINX_UARTLITE 54254e24d33SMichal Simek bool "Xilinx Uarlite support" 54380cce262SRicardo Ribalda Delgado depends on DM_SERIAL && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP || 4xx) 54454e24d33SMichal Simek help 54554e24d33SMichal Simek If you have a Xilinx based board and want to use the uartlite 54654e24d33SMichal Simek serial ports, say Y to this option. If unsure, say N. 54754e24d33SMichal Simek 548bfcef28aSBeniamino Galvaniconfig MESON_SERIAL 549bfcef28aSBeniamino Galvani bool "Support for Amlogic Meson UART" 550bfcef28aSBeniamino Galvani depends on DM_SERIAL && ARCH_MESON 551bfcef28aSBeniamino Galvani help 552bfcef28aSBeniamino Galvani If you have an Amlogic Meson based board and want to use the on-chip 553bfcef28aSBeniamino Galvani serial ports, say Y to this option. If unsure, say N. 554bfcef28aSBeniamino Galvani 555142a20c3SMateusz Kulikowskiconfig MSM_SERIAL 556142a20c3SMateusz Kulikowski bool "Qualcomm on-chip UART" 557142a20c3SMateusz Kulikowski depends on DM_SERIAL 558142a20c3SMateusz Kulikowski help 559142a20c3SMateusz Kulikowski Support Data Mover UART used on Qualcomm Snapdragon SoCs. 560142a20c3SMateusz Kulikowski It should support all Qualcomm devices with UARTDM version 1.4, 561142a20c3SMateusz Kulikowski for example APQ8016 and MSM8916. 562142a20c3SMateusz Kulikowski Single baudrate is supported in current implementation (115200). 5636985d496SStefan Roese 564d804a5e1SMarcel Ziswilerconfig PXA_SERIAL 565d804a5e1SMarcel Ziswiler bool "PXA serial port support" 566d804a5e1SMarcel Ziswiler help 567d804a5e1SMarcel Ziswiler If you have a machine based on a Marvell XScale PXA2xx CPU you 568d804a5e1SMarcel Ziswiler can enable its onboard serial ports by enabling this option. 569d804a5e1SMarcel Ziswiler 570214a17e6SPatrice Chotardconfig STI_ASC_SERIAL 571214a17e6SPatrice Chotard bool "STMicroelectronics on-chip UART" 572214a17e6SPatrice Chotard depends on DM_SERIAL && ARCH_STI 573214a17e6SPatrice Chotard help 574214a17e6SPatrice Chotard Select this to enable Asynchronous Serial Controller available 575214a17e6SPatrice Chotard on STiH410 SoC. This is a basic implementation, it supports 576214a17e6SPatrice Chotard following baudrate 9600, 19200, 38400, 57600 and 115200. 577214a17e6SPatrice Chotard 578ae74de0dSPatrice Chotardconfig STM32_SERIAL 57984e9dcc1SPatrice Chotard bool "STMicroelectronics STM32 SoCs on-chip UART" 5806c30f15bSPatrice Chotard depends on DM_SERIAL && (STM32F4 || STM32F7 || STM32H7) 58184e9dcc1SPatrice Chotard help 5826c30f15bSPatrice Chotard If you have a machine based on a STM32 F4, F7 or H7 SoC you can 583776b2ddbSPatrice Chotard enable its onboard serial ports, say Y to this option. 584776b2ddbSPatrice Chotard If unsure, say N. 58584e9dcc1SPatrice Chotard 586809704ebSMichal Simekconfig ZYNQ_SERIAL 587809704ebSMichal Simek bool "Cadence (Xilinx Zynq) UART support" 588809704ebSMichal Simek depends on DM_SERIAL && (MICROBLAZE || ARCH_ZYNQ || ARCH_ZYNQMP) 589809704ebSMichal Simek help 590809704ebSMichal Simek This driver supports the Cadence UART. It is found e.g. in Xilinx 591809704ebSMichal Simek Zynq/ZynqMP. 592809704ebSMichal Simek 593dd7ff472SChristophe Leroyconfig MPC8XX_CONS 594dd7ff472SChristophe Leroy bool "Console driver for MPC8XX" 595dd7ff472SChristophe Leroy depends on 8xx 596dd7ff472SChristophe Leroy default y 597dd7ff472SChristophe Leroy 598dd7ff472SChristophe Leroychoice 599dd7ff472SChristophe Leroy prompt "Console port" 600dd7ff472SChristophe Leroy default 8xx_CONS_SMC1 601dd7ff472SChristophe Leroy depends on MPC8XX_CONS 602dd7ff472SChristophe Leroy help 603dd7ff472SChristophe Leroy Depending on board, select one serial port 604dd7ff472SChristophe Leroy (CONFIG_8xx_CONS_SMC1 or CONFIG_8xx_CONS_SMC2) 605dd7ff472SChristophe Leroy 606dd7ff472SChristophe Leroyconfig 8xx_CONS_SMC1 607dd7ff472SChristophe Leroy bool "SMC1" 608dd7ff472SChristophe Leroy 609dd7ff472SChristophe Leroyconfig 8xx_CONS_SMC2 610dd7ff472SChristophe Leroy bool "SMC2" 611dd7ff472SChristophe Leroy 612dd7ff472SChristophe Leroyendchoice 613dd7ff472SChristophe Leroy 614dd7ff472SChristophe Leroyconfig SYS_SMC_RXBUFLEN 615dd7ff472SChristophe Leroy int "Console Rx buffer length" 616dd7ff472SChristophe Leroy depends on MPC8XX_CONS 617dd7ff472SChristophe Leroy default 1 618dd7ff472SChristophe Leroy help 619dd7ff472SChristophe Leroy With CONFIG_SYS_SMC_RXBUFLEN it is possible to define 620dd7ff472SChristophe Leroy the maximum receive buffer length for the SMC. 621dd7ff472SChristophe Leroy This option is actual only for 8xx possible. 622dd7ff472SChristophe Leroy If using CONFIG_SYS_SMC_RXBUFLEN also CONFIG_SYS_MAXIDLE 623dd7ff472SChristophe Leroy must be defined, to setup the maximum idle timeout for 624dd7ff472SChristophe Leroy the SMC. 625dd7ff472SChristophe Leroy 626dd7ff472SChristophe Leroyconfig SYS_MAXIDLE 627dd7ff472SChristophe Leroy int "maximum idle timeout" 628dd7ff472SChristophe Leroy depends on MPC8XX_CONS 629dd7ff472SChristophe Leroy default 0 630dd7ff472SChristophe Leroy 631dd7ff472SChristophe Leroyconfig SYS_BRGCLK_PRESCALE 632dd7ff472SChristophe Leroy int "BRG Clock Prescale" 633dd7ff472SChristophe Leroy depends on MPC8XX_CONS 634dd7ff472SChristophe Leroy default 1 635dd7ff472SChristophe Leroy 636dd7ff472SChristophe Leroyconfig SYS_SDSR 637dd7ff472SChristophe Leroy hex "SDSR Value" 638dd7ff472SChristophe Leroy depends on MPC8XX_CONS 639dd7ff472SChristophe Leroy default 0x83 640dd7ff472SChristophe Leroy 641dd7ff472SChristophe Leroyconfig SYS_SDMR 642dd7ff472SChristophe Leroy hex "SDMR Value" 643dd7ff472SChristophe Leroy depends on MPC8XX_CONS 644dd7ff472SChristophe Leroy default 0 645dd7ff472SChristophe Leroy 6460b11dbf7SMasahiro Yamadaendmenu 647