[U-Boot] booting multi-image with several embedded dtbs

Rasmus Villemoes rasmus.villemoes at prevas.dk
Wed Aug 28 09:38:29 UTC 2019


I have a (legacy) multi-image uImage with several embedded dtbs, but no
initrd. I.e. one created by something like "mkimage -T multi -d
zImage:dtb1:dtb2:dtb3". I thought I could boot that using the bootm
command like this

  bootm $loadaddr:0 - $loadaddr:3 # choose dtb3

but that fails with

ERROR: uImage is not a fdt

Just doing "bootm $loadaddr" kind of works (in the sense that the kernel
starts, and I can see that dtb2 got passed as dtb) fails quite miserably
once dtb1 gets interpreted as an initrd - and of course what I want is
to be able to choose between the dtbs at runtime.

Yes, we will switch to proper FIT image at some point, but is there any
way to use the existing multi-image uImage as described?


More information about the U-Boot mailing list