On 9/18/25 2:48 PM, Mathieu Othacehe wrote:
On the RZG2L platform, the advised
TF-A (https://github.com/renesas-rz/rzg_trusted-firmware-a/tree/v2.5/rzg2l)
does not pass any DTB blob to U-Boot.
On the other hand, the RZG2L part of U-Boot expects a DTB to be passed. It
means that if one flashes the latest TF-A as well as the mainline U-Boot,
it will crash trying to dereference the NULL DTB pointer before outputing
anything, which is painful to debug.
This part is unexpected ...
[...]
-int board_fit_config_name_match(const char *name)
-{
- void *atf_fdt_blob = (void *)(rcar_atf_boot_args[1]);
-
- if (fdt_magic(atf_fdt_blob) != FDT_MAGIC)
... because every function which handles such passed DT is testing its
DT magic validity first. Is the magic actually valid in your fail case?
Also, enable CONFIG_DEBUG_UART in your U-Boot config, then you will get
very early UART output capabilities, it works even before DT is used.