From 31499cc6e5064769d370a62a4655a44db83cf691 Mon Sep 17 00:00:00 2001 From: Vandhiadevan Karunamoorthy Date: Mon, 29 Jun 2020 10:44:48 +0530 Subject: [PATCH] ipq5018: Add warm-reset dload fdt fixup This changes skip crash dump if warm-reset is enable. Signed-off-by: Vandhiadevan Karunamoorthy Change-Id: I4a6d66ee0dc574c5f708a3d9d2964dbec0bbedb7 --- board/qca/arm/ipq5018/ipq5018.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/board/qca/arm/ipq5018/ipq5018.c b/board/qca/arm/ipq5018/ipq5018.c index e7fe245e0c..9eb0e8a601 100644 --- a/board/qca/arm/ipq5018/ipq5018.c +++ b/board/qca/arm/ipq5018/ipq5018.c @@ -1638,3 +1638,26 @@ void run_tzt(void *address) { execute_tzt(address); } + +void fdt_fixup_set_dload_warm_reset(void *blob) +{ + int nodeoff, ret; + uint32_t setval = 1; + + nodeoff = fdt_path_offset(blob, "/soc/qca,scm_restart_reason"); + if (nodeoff < 0) { + nodeoff = fdt_path_offset(blob, "/qti,scm_restart_reason"); + if (nodeoff < 0) { + printf("fixup_set_dload: unable to find scm_restart_reason node\n"); + return; + } + } + + ret = fdt_setprop_u32(blob, nodeoff, "dload_status", setval); + if (ret) + printf("fixup_set_dload: 'dload_status' not set"); + + ret = fdt_setprop_u32(blob, nodeoff, "dload_warm_reset", setval); + if (ret) + printf("fixup_set_dload: 'dload_warm_reset' not set"); +}