lib: sbi_hsm: handle failure when hart_stop returns SBI_ENOTSUPP
authorYu Chien Peter Lin <peterlin@andestech.com>
Fri, 20 Jan 2023 03:05:08 +0000 (11:05 +0800)
committerAnup Patel <anup@brainfault.org>
Sun, 22 Jan 2023 12:02:09 +0000 (17:32 +0530)
commit8ecbe6d3fba6a655b5b5d8e39381187826ac750f
tree87ca9efbec3276ee7ea1fe930e4e5b8445d5f72e
parentce2a834c989043895d339df4d61221eca2b428e9
lib: sbi_hsm: handle failure when hart_stop returns SBI_ENOTSUPP

Make use of generic warm-boot path when platform hart_stop callback
returns SBI_ENOTSUPP, in case certain hart can not turn off its
power domain, or it detects some error occured in power management
unit, it can fall through warm-boot flow and wait for interrupt in
sbi_hsm_hart_wait().

Also improves comment in sbi_hsm_hart_wait().

Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com>
Reviewed-by: Andrew Jones <ajones@ventanamicro.com>
Reviewed-by: Atish Patra <atishp@rivosinc.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
include/sbi/sbi_hsm.h
lib/sbi/sbi_hsm.c