[PATCH v2 0/5] OpenSBI hart protection abstraction
Anup Patel
anup at brainfault.org
Tue Dec 16 06:47:21 PST 2025
On Tue, Dec 9, 2025 at 7:22 PM Anup Patel <apatel at ventanamicro.com> wrote:
>
> Currently, PMP and ePMP are the only hart protection mechanisms
> available in OpenSBI but new protection mechanisms (such as Smmpt)
> will be added in the near future. This series adds hart protection
> abstraction and related APIs for allowing multiple hart protection
> mechanisms.
>
> These patches can also found in hart_protection_v2 branch at:
> https://github.com/avpatel/opensbi.git
>
> Changes since v1:
> - Added documentation for function parameters in PATCH2
> - Dropped return value of sbi_hart_protection_unregister() in PATCH2
> - Register oldpmp hart protection only when Smepmp is not available
> in PATCH3
>
> Anup Patel (5):
> lib: sbi: Introduce sbi_hart_pmp_unconfigure() function
> lib: sbi: Introduce hart protection abstraction
> lib: sbi: Implement hart protection for PMP and ePMP
> lib: sbi: Replace sbi_hart_pmp_xyz() and sbi_hart_map/unmap_addr()
> lib: sbi: Factor-out PMP programming into separate sources
Applied this series to the riscv/opensbi repo.
Regards,
Anup
>
> include/sbi/sbi_hart.h | 25 +--
> include/sbi/sbi_hart_pmp.h | 20 ++
> include/sbi/sbi_hart_protection.h | 100 +++++++++
> lib/sbi/objects.mk | 2 +
> lib/sbi/sbi_dbtr.c | 33 +--
> lib/sbi/sbi_domain_context.c | 13 +-
> lib/sbi/sbi_ecall_dbcn.c | 6 +-
> lib/sbi/sbi_hart.c | 308 +-------------------------
> lib/sbi/sbi_hart_pmp.c | 355 ++++++++++++++++++++++++++++++
> lib/sbi/sbi_hart_protection.c | 96 ++++++++
> lib/sbi/sbi_init.c | 22 +-
> lib/sbi/sbi_mpxy.c | 25 ++-
> lib/sbi/sbi_pmu.c | 5 +-
> lib/sbi/sbi_sse.c | 9 +-
> 14 files changed, 645 insertions(+), 374 deletions(-)
> create mode 100644 include/sbi/sbi_hart_pmp.h
> create mode 100644 include/sbi/sbi_hart_protection.h
> create mode 100644 lib/sbi/sbi_hart_pmp.c
> create mode 100644 lib/sbi/sbi_hart_protection.c
>
> --
> 2.43.0
>
More information about the opensbi
mailing list