
Hello Matthias,
I have upgraded the Raspberry 3 firmware from raspi3-firmware (1.20190215-1+deb10u4) to raspi-firmware (1.20200601-3) [https://packages.debian.org/bullseye/raspi-firmware].
After the upgrade the output of U-Boot on the serial console is complete gibberish as if the baudrate were incorrect. The output from the Linux kernel is fine at 115200 baud.
I've seen similar on all firmware since around mid April up until recently, it seems to be fixed with releases in Oct (I'm using one from Oct 8th), I'm not sure if it can be fixed in U-Boot but it seems to be due to a change in the firmware.
Thanks for confirming the problem.
For reference I have found a number of other problems with recent firmwares and 2020.10 release: * U-Boot crashes on a RPi4 8Gb model if you don't have a display connected [1] * It doesn't boot, not sure if it's a crash or something else, you just get the rainbow screen, if you don't have the uart enabled in config.txt (ie just using a display for output).
Both of these seem to be due to firmware changes as opposed to U-Boot changes, as it was working fine on the firmware from Apr 1st, but there's been various other issues there like the 8Gb model doesn't completely work.
[1] https://lists.denx.de/pipermail/u-boot/2020-September/428156.html
Using the most current files from https://github.com/raspberrypi/firmware does not solve the problem for me.
In bcm283x_mu_serial_setbrg() we divide a clock rate by the baudrate. divider = plat->clock / (baudrate * 8);
If we do not have the correct clock rate, the actual baudrate will be wrong.
Best regards
Heinrich
I observe this both with rpi_3_defconfig and rpi_arm64_defconfig, v2020.10 and current origin/master.
config.txt:
arm_control=0x200 enable_uart=1 upstream_kernel=1 kernel=u-boot.bin
boot.scr: setenv autoload no dhcp load mmc 0:1 $fdt_addr_r bcm2710-rpi-3-b-plus.dtb load mmc 0:2 $kernel_addr_r EFI/debian/grubaa64.efi bootefi $kernel_addr_r $fdt_addr_r
Best regards
Heinrich