Some device trees may not have a reserved-memory node. Rather than
exiting early we should create a new reserved-memory node along with
the memory carveout for the firmware we (U-Boot) have placed.

Signed-off-by: Bryan Brattlof <b...@ti.com>
---
 arch/arm/mach-k3/common_fdt.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-k3/common_fdt.c b/arch/arm/mach-k3/common_fdt.c
index 4a01671156687..361b0c0b31b09 100644
--- a/arch/arm/mach-k3/common_fdt.c
+++ b/arch/arm/mach-k3/common_fdt.c
@@ -122,10 +122,8 @@ int fdt_fixup_reserved(void *blob, const char *name,
 
        /* Find reserved-memory */
        nodeoffset = fdt_subnode_offset(blob, 0, "reserved-memory");
-       if (nodeoffset < 0) {
-               debug("Could not find reserved-memory node\n");
-               return 0;
-       }
+       if (nodeoffset < 0)
+               goto add_carveout;
 
        /* Find existing matching subnode and remove it */
        fdt_for_each_subnode(subnode, blob, nodeoffset) {
@@ -154,6 +152,7 @@ int fdt_fixup_reserved(void *blob, const char *name,
                }
        }
 
+add_carveout:
        struct fdt_memory carveout = {
                .start = new_address,
                .end = new_address + new_size - 1,

---
base-commit: b78f8677cde8b1dde31b66f5b780f2e9b62fba7f
change-id: 20250227-reserved-memory-85f5d409e6a7

Best regards,
-- 
Bryan Brattlof <b...@ti.com>

Reply via email to