boot/fit: print all configuration node compatibles

Fit conf node may have a compatible property[1] which stores the
compatible of the first blob in the fdt property of the node. This can
be used to automatically select the proper conf node based on the
compatible from the running U-Boot (matching the former's compatible
with the latter)[2].

This brings the ability to mkimage/dumpimage to print the compatibles of
the configuration node(s). U-Boot CLI commands such as iminfo also see
this addition to their output.

[1] https://fitspec.osfw.foundation/#optional-properties compatible paragraph
[2] https://fitspec.osfw.foundation/#select-a-configuration-to-boot

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
This commit is contained in:
Quentin Schulz
2025-12-03 17:19:35 +01:00
committed by Tom Rini
parent 3059eb0c27
commit 6c7d3ba292

View File

@@ -323,6 +323,17 @@ static void fit_conf_print(const void *fit, int noffset, const char *p)
printf("%s\n", uname);
}
for (fdt_index = 0;
uname = fdt_stringlist_get(fit, noffset, FIT_COMPAT_PROP,
fdt_index, NULL), uname;
fdt_index++) {
if (fdt_index == 0)
printf("%s Compatible: ", p);
else
printf("%s ", p);
printf("%s\n", uname);
}
uname = fdt_getprop(fit, noffset, FIT_FPGA_PROP, NULL);
if (uname)
printf("%s FPGA: %s\n", p, uname);