diff --git a/board/qca/arm/ipq9574/ipq9574.c b/board/qca/arm/ipq9574/ipq9574.c index a83d45a534..c85e008b69 100644 --- a/board/qca/arm/ipq9574/ipq9574.c +++ b/board/qca/arm/ipq9574/ipq9574.c @@ -1345,3 +1345,28 @@ void ipq_uboot_fdt_fixup(void) } return; } + +void fdt_fixup_set_dload_warm_reset(void *blob) +{ + int nodeoff, ret; + uint32_t setval = 1; + + 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"); +} + +void sdi_disable(void) +{ + qca_scm_sdi(); +}