Raspberry Pi: Keep warnings from firmware in DT, if any
authorFiona Klute <fiona.klute@gmx.de>
Wed, 12 Feb 2025 11:39:01 +0000 (12:39 +0100)
committerPeter Robinson <pbrobinson@gmail.com>
Thu, 13 Mar 2025 11:06:16 +0000 (11:06 +0000)
The /chosen/user-warnings property is created by the RPi firmware if
there are warnings to report, keep it to make debugging easier.

For example, if the firmware config.txt contains
"dtoverlay=error-example" and that example references an undefined
symbol "&nosuchdev" the warning can be read after boot:

$ cat /proc/device-tree/chosen/user-warnings
dterror: can't find symbol 'nosuchdev'
Failed to resolve overlay 'error-example'

Signed-off-by: Fiona Klute <fiona.klute@gmx.de>
Reviewed-by: Matthias Brugger <mbrugger@suse.com>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
board/raspberrypi/rpi/rpi.c

index fe6153b..43efb0d 100644 (file)
@@ -594,6 +594,9 @@ void  update_fdt_from_fw(void *fdt, void *fw_fdt)
        /* kernel address randomisation seed as provided by the firmware */
        copy_property(fdt, fw_fdt, "/chosen", "kaslr-seed");
 
+       /* warnings from the firmware (if any) */
+       copy_property(fdt, fw_fdt, "/chosen", "user-warnings");
+
        /* address of the PHY device as provided by the firmware  */
        copy_property(fdt, fw_fdt, "ethernet0/mdio@e14/ethernet-phy@1", "reg");
 }