
This patch deletes tifs DT node as part of fixup.
TISCI API reported msmc_size, does not include 64KB reserved size for tifs aka MSMC comms memory.
As part of fixup, original code uses TISCI API reported msmc_size as size for sram DT node.
tifs node is similar to l3-cache, which should hold address above msms_size, and should be deleted before passing control to OS.
Documentation https://software-dl.ti.com/tisci/esd/latest/2_tisci_msgs/general/core.html?h...
Signed-off-by: Udit Kumar u-kumar1@ti.com --- arch/arm/mach-k3/common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/arch/arm/mach-k3/common.c b/arch/arm/mach-k3/common.c index a2adb791f6..4651744821 100644 --- a/arch/arm/mach-k3/common.c +++ b/arch/arm/mach-k3/common.c @@ -349,9 +349,11 @@ int fdt_fixup_msmc_ram(void *blob, char *parent_path, char *node_name) size = fdt_read_number(sub_reg, 1); debug("%s: subnode = %d, addr = 0x%x. size = 0x%x\n", __func__, subnode, addr, size); + if (addr + size > msmc_size || !strncmp(fdt_get_name(blob, subnode, &len), "sysfw", 5) || - !strncmp(fdt_get_name(blob, subnode, &len), "l3cache", 7)) { + !strncmp(fdt_get_name(blob, subnode, &len), "l3cache", 7) || + !strncmp(fdt_get_name(blob, subnode, &len), "tifs", 4)) { fdt_del_node(blob, subnode); debug("%s: deleting subnode %d\n", __func__, subnode); if (!prev_node)