From: Bin Meng <bm...@tinylab.org> riscv_csrrw_check() already does the generic privilege level check hence there is no need to do the specific M-mode access check in the mseccfg predicate().
With this change debugger can access the mseccfg CSR anytime. Signed-off-by: Bin Meng <bm...@tinylab.org> Reviewed-by: Weiwei Li <liwei...@iscas.ac.cn> Message-ID: <20230228104035.1879882-18-bm...@tinylab.org> Signed-off-by: Palmer Dabbelt <pal...@rivosinc.com> --- target/riscv/csr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/riscv/csr.c b/target/riscv/csr.c index 020c3f524f..785f6f4d45 100644 --- a/target/riscv/csr.c +++ b/target/riscv/csr.c @@ -451,7 +451,7 @@ static RISCVException pmp(CPURISCVState *env, int csrno) static RISCVException epmp(CPURISCVState *env, int csrno) { - if (env->priv == PRV_M && riscv_cpu_cfg(env)->epmp) { + if (riscv_cpu_cfg(env)->epmp) { return RISCV_EXCP_NONE; } -- 2.39.2