summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--board/xilinx/zynqmp/zynqmp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/board/xilinx/zynqmp/zynqmp.c b/board/xilinx/zynqmp/zynqmp.c
index 1afc980243..fd36312d46 100644
--- a/board/xilinx/zynqmp/zynqmp.c
+++ b/board/xilinx/zynqmp/zynqmp.c
@@ -190,7 +190,7 @@ static char *zynqmp_get_silicon_idcode_name(void)
{
u32 i;
u32 idcode, idcode2;
- static char name[ZYNQMP_VERSION_SIZE];
+ char name[ZYNQMP_VERSION_SIZE];
u32 ret_payload[PAYLOAD_ARG_CNT];
xilinx_pm_request(PM_GET_CHIPID, 0, 0, 0, 0, ret_payload);
@@ -218,7 +218,7 @@ static char *zynqmp_get_silicon_idcode_name(void)
return "unknown";
/* Add device prefix to the name */
- strncat(name, "zu", 2);
+ strncpy(name, "zu", ZYNQMP_VERSION_SIZE);
strncat(&name[2], simple_itoa(zynqmp_devices[i].device), 2);
if (zynqmp_devices[i].variants & ZYNQMP_VARIANT_EV) {
@@ -268,7 +268,7 @@ static char *zynqmp_get_silicon_idcode_name(void)
debug("Variant not identified\n");
}
- return name;
+ return strdup(name);
}
#endif