summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorTom Rini <[email protected]>2023-11-07 10:36:23 -0500
committerTom Rini <[email protected]>2023-11-07 10:36:23 -0500
commite17d174773e9ba9447596708e702b7382e47a6cf (patch)
treeef27022ead88cb3d66df0eeed8df06035d223b80 /doc
parent37229edccca13ea47e44865aaafd17890f9148b2 (diff)
parent37f500d711ec1f6b25189c1f6022ffe5e70a38ab (diff)
Merge tag 'xilinx-for-v2024.01-rc3' of https://source.denx.de/u-boot/custodians/u-boot-microblaze
Xilinx changes for v2024.01-rc3 xilinx: - Disable lock in mini spi configurations zynq: - DTS syncups - Kconfig updates zynqmp: - DTS syncups - Kconfig fixups versal: - Make 30MHz as default freq for spi versal net: - Enable ADMA for mmc serial: - Read baudrate from DT spi: - Put spi lock under one Kconfig - Support 64bit addresses in cadance_ospi - zynqmp_gqspi - change logging support firmware: - Handle errors in zynqmp_pm_feature() include: - Sync vsc8531 dt binding with kernel
Diffstat (limited to 'doc')
-rw-r--r--doc/README.serial_dt_baud41
1 files changed, 41 insertions, 0 deletions
diff --git a/doc/README.serial_dt_baud b/doc/README.serial_dt_baud
new file mode 100644
index 00000000000..f8768d0e1bc
--- /dev/null
+++ b/doc/README.serial_dt_baud
@@ -0,0 +1,41 @@
+Fetch serial baudrate from DT
+-----------------------------
+
+To support fetching of baudrate from DT, the following is done:-
+
+The baudrate configured in Kconfig symbol CONFIG_BAUDRATE is taken by default by serial.
+If change of baudrate is required then the Kconfig symbol CONFIG_BAUDRATE needs to
+changed and U-Boot recompilation is required or the U-Boot environment needs to be updated.
+
+To avoid this, add support to fetch the baudrate directly from the device tree file and
+update the environment.
+
+The default environment stores the default baudrate value. When default baudrate and dtb
+baudrate are not same glitches are seen on the serial.
+So, the environment also needs to be updated with the dtb baudrate to avoid the glitches on
+the serial which is enabled by OF_SERIAL_BAUD.
+
+The Kconfig SPL_ENV_SUPPORT needs to be enabled to allow patching in SPL.
+
+The Kconfig DEFAULT_ENV_IS_RW which is enabled by OF_SERIAL_BAUD with making the environment
+writable.
+
+The ofnode_read_baud() function parses and fetches the baudrate value from the DT. This value
+is validated and updated to baudrate during serial init. Padding is added at the end of the
+default environment and the dt baudrate is updated with the latest value.
+
+Example:-
+
+The serial port options are of the form "bbbbpnf", where "bbbb" is the baud rate, "p" is parity ("n", "o", or "e"),
+"n" is number of bits, and "f" is flow control ("r" for RTS or omit it). Default is "115200n8".
+
+chosen {
+ bootargs = "earlycon console=ttyPS0,115200 clk_ignore_unused root=/dev/ram0 rw init_fatal_sh=1";
+ stdout-path = "serial0:115200n8";
+ };
+
+From the chosen node, stdout-path property is obtained as string.
+
+ stdout-path = "serial0:115200n8";
+
+The string is parsed to get the baudrate 115200. This string is converted to integer and updated to the environment.