You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/target/riscv
Jay Chang 86bc3a0abf target/riscv: Restrict midelegh access to S-mode harts
RISC-V AIA Spec states:
"For a machine-level environment, extension Smaia encompasses all added
CSRs and all modifications to interrupt response behavior that the AIA
specifies for a hart, over all privilege levels. For a supervisor-level
environment, extension Ssaia is essentially the same as Smaia except
excluding the machine-level CSRs and behavior not directly visible to
supervisor level."

Since midelegh is an AIA machine-mode CSR, add Smaia extension check in
aia_smode32 predicate.

Reviewed-by: Frank Chang <frank.chang@sifive.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Jay Chang <jay.chang@sifive.com>
Reviewed-by: Nutty Liu<liujingqi@lanxincomputing.com>
Message-ID: <20250701030021.99218-3-jay.chang@sifive.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2 weeks ago
..
insn_trans riscv: Revert "Generate strided vector loads/stores with tcg nodes." 2 weeks ago
kvm target/riscv: use qemu_chr_fe_write_all() in DBCN_CONSOLE_WRITE_BYTE 1 month ago
tcg target: riscv: Add Svrsw60t59b extension support 1 month ago
Kconfig target/riscv/cpu_helper: Fix linking problem with semihosting disabled 10 months ago
XVentanaCondOps.decode target/riscv: Add XVentanaCondOps custom extension 4 years ago
arch_dump.c include: Rename sysemu/ -> system/ 8 months ago
bitmanip_helper.c codebase: prepare to remove cpu.h from exec/exec-all.h 4 months ago
common-semi-target.h semihosting: Split out common-semi-target.h 3 years ago
cpu-param.h tcg: Remove the TCG_GUEST_DEFAULT_MO definition globally 4 months ago
cpu-qom.h target/riscv: Add BOSC's Xiangshan Kunminghu CPU 1 month ago
cpu.c target: riscv: Add Svrsw60t59b extension support 1 month ago
cpu.h target/riscv: Make PMP region count configurable 1 month ago
cpu_bits.h target: riscv: Add Svrsw60t59b extension support 1 month ago
cpu_cfg.h target/riscv: include default value in cpu_cfg_fields.h.inc 3 months ago
cpu_cfg_fields.h.inc target: riscv: Add Svrsw60t59b extension support 1 month ago
cpu_helper.c target: riscv: Add Svrsw60t59b extension support 1 month ago
cpu_user.h target/riscv: zicfilp `lpad` impl and branch tracking 10 months ago
cpu_vendorid.h target/riscv: add Ventana's Veyron V1 CPU 2 years ago
crypto_helper.c include: Remove 'exec/exec-all.h' 3 months ago
csr.c target/riscv: Restrict midelegh access to S-mode harts 2 weeks ago
debug.c include: Remove 'exec/exec-all.h' 3 months ago
debug.h target/riscv: Add textra matching condition for the triggers 10 months ago
fpu_helper.c target/riscv: Fix fcvt.s.bf16 NaN box checking 1 month ago
gdbstub.c target/riscv: store RISCVCPUDef struct directly in the class 3 months ago
helper.h target/riscv: Add a property to set vill bit on reserved usage of vsetvli instruction 1 month ago
insn16.decode target/riscv: compressed encodings for sspush and sspopchk 10 months ago
insn32.decode target/riscv: Fix the rvv reserved encoding of unmasked instructions 3 months ago
instmap.h target/riscv: Update [m|h]tinst CSR in riscv_cpu_do_interrupt() 3 years ago
internals.h target/riscv: Fix MEPC/SEPC bit masking for IALIGN 1 month ago
m128_helper.c include: Remove 'exec/exec-all.h' 3 months ago
machine.c target/riscv: Make PMP region count configurable 1 month ago
meson.build riscv: thead: Add th.sxstatus CSR emulation 1 year ago
monitor.c target/riscv: remove break after g_assert_not_reached() 11 months ago
op_helper.c target/riscv: do not call GETPC() in check_ret_from_m_mode() 2 weeks ago
pmp.c target/riscv: Fix pmp range wraparound on zero 2 weeks ago
pmp.h target/riscv: Add new CSR fields for S{sn, mn, m}pm extensions as part of Zjpm v1.0 7 months ago
pmu.c include/exec: Split out icount.h 4 months ago
pmu.h target/riscv: More accurately model priv mode filtering. 1 year ago
riscv-qmp-cmds.c target/riscv: add profile->present flag 1 month ago
sbi_ecall_interface.h target/riscv/kvm: implement SBI debug console (DBCN) calls 1 year ago
th_csr.c target/riscv: generalize custom CSR functionality 3 months ago
time_helper.c target/riscv: Enable/Disable S/VS-mode Timer when STCE bit is changed 1 month ago
time_helper.h target/riscv: Enable/Disable S/VS-mode Timer when STCE bit is changed 1 month ago
trace-events target/riscv: add trace in riscv_raise_exception() 7 months ago
trace.h trace: switch position of headers to what Meson requires 5 years ago
translate.c target/riscv: support atomic instruction fetch (Ziccif) 1 month ago
vcrypto_helper.c include: Remove 'exec/exec-all.h' 3 months ago
vector_helper.c qemu: Declare all load/store helper in 'qemu/bswap.h' 4 weeks ago
vector_internals.c target/riscv: refactor VSTART_CHECK_EARLY_EXIT() to accept vl as a parameter 5 months ago
vector_internals.h target/riscv: refactor VSTART_CHECK_EARLY_EXIT() to accept vl as a parameter 5 months ago
xthead.decode RISC-V: Adding XTheadFmv ISA extension 3 years ago
zce_helper.c include: Remove 'exec/exec-all.h' 3 months ago