summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnshul Dalal <[email protected]>2025-09-03 16:47:02 +0530
committerTom Rini <[email protected]>2025-09-15 17:08:02 -0600
commit7aa5271def6ba16ff4426aa164b7bb743673b3c3 (patch)
tree82e8ee78be9324a26de6f3e1a147a2d3843055ee
parent83bb1c438486a03184795b0dfa970271496b24bf (diff)
mach-k3: fix reading size and addr from fdt on R5
fdtdec_get_addr_size uses architecture dependent datatypes which causes the 32-bit R5 to fail when reading the 64-bit size and addr fields of reg nodes from the fdt. Therefore change it to a common api for both 64 and 32 bit platforms to allow for fdt fixups from R5. Fixes: 8b0fc29de0e3 ("arm: mach-k3: am62: Fixup TF-A/OP-TEE reserved-memory node in FDT") Signed-off-by: Anshul Dalal <[email protected]> Reviewed-by: Dhruva Gole <[email protected]>
-rw-r--r--arch/arm/mach-k3/common_fdt.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/arm/mach-k3/common_fdt.c b/arch/arm/mach-k3/common_fdt.c
index 2777354c6ab..1e6786f6c20 100644
--- a/arch/arm/mach-k3/common_fdt.c
+++ b/arch/arm/mach-k3/common_fdt.c
@@ -140,7 +140,9 @@ int fdt_fixup_reserved(void *blob, const char *name,
return -EINVAL;
if (!strncmp(node_name, name, strlen(name))) {
/* Read out old size first */
- addr = fdtdec_get_addr_size(blob, subnode, "reg", &size);
+ addr = fdtdec_get_addr_size_auto_parent(
+ blob, nodeoffset, subnode, "reg", 0, &size,
+ false);
if (addr == FDT_ADDR_T_NONE)
return -EINVAL;
new_size = size;