Message ID | 20230419061352.3156023-1-u-kumar1@ti.com |
---|---|
State | Superseded |
Delegated to: | Tom Rini |
Headers | show |
Series | arch: arm: mach-k3: Delete tifs node in DT fixup | expand |
On 11:43-20230419, Udit Kumar wrote: > 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?highlight=msmc#tisci-msg-query-msmc > > 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)) { I would probably move the tifs check above the l3cache check. > fdt_del_node(blob, subnode); > debug("%s: deleting subnode %d\n", __func__, subnode); > if (!prev_node) > -- > 2.34.1 >
Thanks for review On 4/19/2023 9:22 PM, Nishanth Menon wrote: > On 11:43-20230419, Udit Kumar wrote: >> 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?highlight=msmc#tisci-msg-query-msmc >> >> 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)) { > I would probably move the tifs check above the l3cache check. I will move this in v2. you want to stay close to DT nodes order. or there is some other reason ? > >> fdt_del_node(blob, subnode); >> debug("%s: deleting subnode %d\n", __func__, subnode); >> if (!prev_node) >> -- >> 2.34.1 >>
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)
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?highlight=msmc#tisci-msg-query-msmc Signed-off-by: Udit Kumar <u-kumar1@ti.com> --- arch/arm/mach-k3/common.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)