[PATCH 0/7] Fix and improve the Andes ATCSMU and LLC drivers
Anup Patel
anup at brainfault.org
Mon Aug 31 22:19:04 PDT 2026
On Tue, Jul 28, 2026 at 1:41 PM Ben Zong-You Xie <ben717 at andestech.com> wrote:
>
> Fixes and cleanups for the Andes last level cache, HSM and suspend
> drivers, collected while bringing up suspend to RAM on the AE350
> platform.
>
> Below is the summary of this patch set:
> - Patch 1 makes andes_llcache_enable() return 0 on success, as the
> cache_enable() callback is documented to. Nothing checks it today, but
> patch 7 does.
> - Patch 2 puts the SMU and LLC register regions in the root domain, so
> the supervisor can reach them under Smepmp.
> - Patch 3 pairs the non-retentive CSR save and restore with an explicit
> flag instead of inferring it from the boot count and sleep type.
> - Patch 4 restores those CSRs on the system-suspend resume path, which
> never reached the old call site.
> - Patch 5 wakes a sleeping hart with a plain IPI and drops the SMU
> WAKEUP_CMD path.
> - Patch 6 polls the secondary harts until they are really asleep instead
> of checking once.
> - Patch 7 arms the SMU last and unwinds an aborted suspend rather than
> leaving the hart half configured.
>
> Signed-off-by: Ben Zong-You Xie <ben717 at andestech.com>
>
> Ben Zong-You Xie (7):
> lib: utils/cache: fix andes_llcache_enable() return value
> lib: utils/andes: add the SMU and LLC registers to the root domain
> platform: generic/andes: pair non-retentive CSR save/restore with a
> flag
> lib: utils/suspend: restore Andes CSRs on system-suspend resume
> lib: utils/hsm: wake sleeping Andes harts with an IPI
> lib: utils/suspend: wait for the secondary Andes harts to sleep
> lib: utils/andes: arm the SMU sleep command last
Applied this series to the riscv/opensbi repo.
Thanks,
Anup
>
> include/sbi_utils/hsm/fdt_hsm_andes_atcsmu.h | 8 ++-
> lib/utils/cache/fdt_andes_llcache.c | 23 +++++--
> lib/utils/hsm/fdt_hsm_andes_atcsmu.c | 64 ++++++++----------
> lib/utils/suspend/fdt_suspend_andes_atcsmu.c | 70 ++++++++++++++------
> platform/generic/andes/ae350.c | 26 ++++++--
> platform/generic/include/andes/andes.h | 4 ++
> 6 files changed, 129 insertions(+), 66 deletions(-)
>
> --
> 2.34.1
>
> --
> opensbi mailing list
> opensbi at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/opensbi
More information about the opensbi
mailing list