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 <anshuld@ti.com>
Reviewed-by: Dhruva Gole <d-gole@ti.com>
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;