The cpu release command for r5 mode (lockstep/split) argument
accepts only string. But the zynqmp tcminit command accepts
string or number for r5 mode (lockstep/split or 0/1) argument.
To fix the r5 mode argument, the common argument (lockstep/split
or 0/1) is used across different u-boot commands. Use the strcmp()
instead of strncmp() to make uniform the r5 mode (lockstep/split
or 0/1) for the zynqmp tcminit and cpu release command.

Signed-off-by: Padmarao Begari <padmarao.beg...@amd.com>
---
 arch/arm/mach-zynqmp/mp.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-zynqmp/mp.c b/arch/arm/mach-zynqmp/mp.c
index 6e6da8008f..448bc53286 100644
--- a/arch/arm/mach-zynqmp/mp.c
+++ b/arch/arm/mach-zynqmp/mp.c
@@ -352,7 +352,7 @@ int cpu_release(u32 nr, int argc, char *const argv[])
                 */
                flush_dcache_all();
 
-               if (!strncmp(argv[1], "lockstep", 8)) {
+               if (!strcmp(argv[1], "lockstep") || !strcmp(argv[1], "0")) {
                        if (nr != ZYNQMP_CORE_RPU0) {
                                printf("Lockstep mode should run on 
ZYNQMP_CORE_RPU0\n");
                                return 1;
@@ -369,7 +369,7 @@ int cpu_release(u32 nr, int argc, char *const argv[])
                        dcache_enable();
                        set_r5_halt_mode(nr, RELEASE, LOCK);
                        mark_r5_used(nr, LOCK);
-               } else if (!strncmp(argv[1], "split", 5)) {
+               } else if (!strcmp(argv[1], "split") || !strcmp(argv[1], "1")) {
                        printf("R5 split mode\n");
                        set_r5_reset(nr, SPLIT);
                        set_r5_tcm_mode(SPLIT);
-- 
2.25.1

Reply via email to