[PATCH 0/5] OpenSBI hart protection abstraction

Anup Patel apatel at ventanamicro.com
Wed Nov 26 06:18:39 PST 2025


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_v1 branch at:
https://github.com/avpatel/opensbi.git

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

 include/sbi/sbi_hart.h            |  25 +--
 include/sbi/sbi_hart_pmp.h        |  20 ++
 include/sbi/sbi_hart_protection.h |  88 ++++++++
 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            | 356 ++++++++++++++++++++++++++++++
 lib/sbi/sbi_hart_protection.c     | 110 +++++++++
 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, 648 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