From 9134c3643e420b1917cf98940552ef16467f7a34 Mon Sep 17 00:00:00 2001 From: Atish Patra <atish.patra@wdc.com> Date: Mon, 8 Nov 2021 10:52:59 -0800 Subject: lib: sbi: Delegate PMU counter overflow interrupt to S mode OpenSBI doesn't handle PMU counters for now. Delegate the overflow counter to S-mode always. Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Anup Patel <anup.patel@wdc.com> Signed-off-by: Atish Patra <atish.patra@wdc.com> --- lib/sbi/sbi_hart.c | 3 +++ 1 file changed, 3 insertions(+) (limited to 'lib') diff --git a/lib/sbi/sbi_hart.c b/lib/sbi/sbi_hart.c index 7f31bb7..8a98d4d 100644 --- a/lib/sbi/sbi_hart.c +++ b/lib/sbi/sbi_hart.c @@ -115,6 +115,9 @@ static int delegate_traps(struct sbi_scratch *scratch) /* Send M-mode interrupts and most exceptions to S-mode */ interrupts = MIP_SSIP | MIP_STIP | MIP_SEIP; + if (sbi_hart_has_feature(scratch, SBI_HART_HAS_SSCOFPMF)) + interrupts |= MIP_LCOFIP; + exceptions = (1U << CAUSE_MISALIGNED_FETCH) | (1U << CAUSE_BREAKPOINT) | (1U << CAUSE_USER_ECALL); if (sbi_platform_has_mfaults_delegation(plat)) -- cgit v1.2.3