From: Quentin Schulz <[email protected]>

Fit conf node may have a compatible property[1] which stores the root
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 adds (and uses) this constant for FIT node parsing.

Note that this property may also appear in fpga image nodes[3] but that
isn't done in this commit.

[1] https://fitspec.osfw.foundation/#optional-properties compatible paragraph
[2] https://fitspec.osfw.foundation/#select-a-configuration-to-boot
[3] https://fitspec.osfw.foundation/#images-node 2.3.2 Conditionally mandatory 
property
Signed-off-by: Quentin Schulz <[email protected]>
---
 boot/image-fit.c | 2 +-
 include/image.h  | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/boot/image-fit.c b/boot/image-fit.c
index 0205637ed16..c42b22ab02b 100644
--- a/boot/image-fit.c
+++ b/boot/image-fit.c
@@ -1756,7 +1756,7 @@ int fit_conf_find_compat(const void *fit, const void *fdt)
                        continue;
 
                /* If there's a compat property in the config node, use that. */
-               if (fdt_getprop(fit, noffset, "compatible", NULL)) {
+               if (fdt_getprop(fit, noffset, FIT_COMPAT_PROP, NULL)) {
                        fdt = fit;                /* search in FIT image */
                        compat_noffset = noffset; /* search under config node */
                } else {        /* Otherwise extract it from the kernel FDT. */
diff --git a/include/image.h b/include/image.h
index 9a1c828416d..8dcf0cea25f 100644
--- a/include/image.h
+++ b/include/image.h
@@ -1105,6 +1105,7 @@ int booti_setup(ulong image, ulong *relocated_addr, ulong 
*size,
 #define FIT_SCRIPT_PROP                "script"
 #define FIT_PHASE_PROP         "phase"
 #define FIT_TFA_BL31_PROP      "tfa-bl31"
+#define FIT_COMPAT_PROP                "compatible"
 
 #define FIT_MAX_HASH_LEN       HASH_MAX_DIGEST_SIZE
 

-- 
2.52.0

Reply via email to