Hi Matthias, Am 23.12.19 um 21:20 schrieb Matthias Brugger: > Hi Stefan, > > On 23/12/2019 19:51, Stefan Wahren wrote: >> Am 20.12.19 um 14:58 schrieb Stefan Wahren: >>> Hi, >>> >>> i tried to run current U-Boot (rpi_4_32b_defconfig) on my RPi 4 with >>> bcm2711-rpi-4-b.dtb from the upstream kernel. Unfortunately i only see >>> garbage on the debug UART (pin 14 & 15). Using the DTB from the >>> downstream kernel has a proper UART output. The config.txt contains >>> debug_uart=1 >>> >>> I compared both and identified an offending Linux commit: >>> ARM: dts: bcm283x: Remove brcm,bcm2835-pl011 compatible >>> >>> Unfortunately reverting this patch still doesn't fix the issue. Any ideas? >> After hours of playing with the DTB, i finally found the reason why the >> upstream kernel DTB doesn't work with U-Boot on RPI 4. The DTS must be >> compiled with flag "-@". >> >> It isn't clear to me, why this is necessary but it would be nice to make >> U-Boot work without this. >> > Can you provide the exact command you are using?
i didn't call dtc directly via command line. I just added this Makefile hack [1] to the Linux upstream tree. This will add a __symbols__ section to the DTB which is required for overlays. You can verify this with dtdiff. Since the upstream kernel boots without the __symbols__ section, i think this garbage output issue could be fixed in u-boot. Regards Stefan [1] - https://github.com/raspberrypi/linux/blob/b85f76a63d5f1b13220c61244469d55487db84f1/arch/arm/boot/dts/Makefile#L1231 > > Regards, > Matthias