mirror of
https://github.com/riscv-software-src/opensbi.git
synced 2026-09-08 18:21:29 +01:00
lib: utils/andes: arm the SMU sleep command last
Once the sleep command is written, the next WFI puts the core to sleep, so everything that can fail has to run before it. Also, use writel() so the command store cannot still be in flight at the WFI. Signed-off-by: Ben Zong-You Xie <ben717@andestech.com> Reviewed-by: Anup Patel <anup@brainfault.org> Link: https://lore.kernel.org/r/20260728081041.2724668-8-ben717@andestech.com Signed-off-by: Anup Patel <anup@brainfault.org>
This commit is contained in:
committed by
Anup Patel
parent
0fb4799307
commit
06af8bd61b
@@ -38,6 +38,14 @@ void ae350_non_ret_save(struct sbi_scratch *scratch)
|
||||
andes_hdata->saved = true;
|
||||
}
|
||||
|
||||
void ae350_non_ret_discard(struct sbi_scratch *scratch)
|
||||
{
|
||||
struct andes_hart_data *andes_hdata = sbi_scratch_offset_ptr(scratch,
|
||||
andes_hart_data_offset);
|
||||
|
||||
andes_hdata->saved = false;
|
||||
}
|
||||
|
||||
void ae350_non_ret_restore(struct sbi_scratch *scratch)
|
||||
{
|
||||
struct andes_hart_data *andes_hdata = sbi_scratch_offset_ptr(scratch,
|
||||
|
||||
Reference in New Issue
Block a user