After U-Boot's DTC/libfdt update, device tree overlay application could
fail with FDT_ERR_ALIGNMENT due to the overlay DTBO being loaded at a
misaligned address. Change the FIT image loader option in image-fit.c
from FIT_LOAD_IGNORED to FIT_LOAD_OPTIONAL_NON_ZERO, to ensure overlays
are loaded at properly aligned addresses and any alignment errors are
resolved.

Tested on: PolarFire SoC Icicle Kit

Fixes: 0535e46d55d ("scripts/dtc: Update to upstream version 
v1.7.2-35-g52f07dcca47c")
Signed-off-by: Jamie Gibbons <[email protected]>
---
 boot/image-fit.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/boot/image-fit.c b/boot/image-fit.c
index 2d040e38d97..3a327d07784 100644
--- a/boot/image-fit.c
+++ b/boot/image-fit.c
@@ -2481,7 +2481,7 @@ int boot_get_fdt_fit(struct bootm_headers *images, ulong 
addr,
                        addr, &uname, &uconfig,
                        arch, IH_TYPE_FLATDT,
                        BOOTSTAGE_ID_FIT_FDT_START,
-                       FIT_LOAD_IGNORED, &ovload, &ovlen);
+                       FIT_LOAD_OPTIONAL_NON_ZERO, &ovload, &ovlen);
                if (ov_noffset < 0) {
                        printf("load of %s failed\n", uname);
                        continue;
-- 
2.43.0

Reply via email to