summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRahul Pathak <[email protected]>2025-09-03 20:13:23 +0530
committerAnup Patel <[email protected]>2025-09-16 09:53:04 +0530
commit17b8d1900d56df1e14edd8829acf22686fa08eac (patch)
tree245c81c5c2a1ccd323eabe03a6169431da62b18c /lib
parent153cdeea5350837c1206a2d2b6189fd0ba06d1f2 (diff)
lib: utils/reset: Hang the hart after RPMI system reset message
RPMI system reset is a posted message which does not wait for acknowledgement after sending the RPMI message to PuC. Call the sbi_hart_hang() to hang the hart after performing the system reset via RPMI message. Fixes: 6a26726e08e4 ("lib/utils: reset: Add RPMI System Reset driver") Reported-by: Anup Patel <[email protected]> Signed-off-by: Rahul Pathak <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Anup Patel <[email protected]>
Diffstat (limited to 'lib')
-rw-r--r--lib/utils/reset/fdt_reset_rpmi.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/utils/reset/fdt_reset_rpmi.c b/lib/utils/reset/fdt_reset_rpmi.c
index edc53932..c29715d3 100644
--- a/lib/utils/reset/fdt_reset_rpmi.c
+++ b/lib/utils/reset/fdt_reset_rpmi.c
@@ -7,6 +7,7 @@
* Rahul Pathak <[email protected]>
*/
+#include <sbi/sbi_hart.h>
#include <sbi/sbi_error.h>
#include <sbi/sbi_system.h>
#include <sbi/sbi_console.h>
@@ -56,6 +57,8 @@ static void rpmi_do_system_reset(u32 reset_type)
if (ret)
sbi_printf("system reset failed [type: %d]: ret: %d\n",
reset_type, ret);
+
+ sbi_hart_hang();
}
/**