Browse Source

target/riscv/cpu.c: add 'sdtrig' in riscv,isa

We have support for sdtrig for awhile but we are not advertising it. It
is enabled by default via the 'debug' flag. Use the same flag to also
advertise sdtrig.

Add an exception in disable_priv_spec_isa_exts() to avoid spamming
warnings for 'sdtrig' for vendor CPUs like sifive_u.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20250604174329.1147549-2-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
pull/292/head
Daniel Henrique Barboza 10 months ago
committed by Alistair Francis
parent
commit
f31ba686a9
  1. 1
      target/riscv/cpu.c
  2. 9
      target/riscv/tcg/tcg-cpu.c
  3. BIN
      tests/data/acpi/riscv64/virt/RHCT

1
target/riscv/cpu.c

@ -189,6 +189,7 @@ const RISCVIsaExtData isa_edata_arr[] = {
ISA_EXT_DATA_ENTRY(zvkt, PRIV_VERSION_1_12_0, ext_zvkt),
ISA_EXT_DATA_ENTRY(zhinx, PRIV_VERSION_1_12_0, ext_zhinx),
ISA_EXT_DATA_ENTRY(zhinxmin, PRIV_VERSION_1_12_0, ext_zhinxmin),
ISA_EXT_DATA_ENTRY(sdtrig, PRIV_VERSION_1_12_0, debug),
ISA_EXT_DATA_ENTRY(shcounterenw, PRIV_VERSION_1_12_0, has_priv_1_12),
ISA_EXT_DATA_ENTRY(sha, PRIV_VERSION_1_12_0, ext_sha),
ISA_EXT_DATA_ENTRY(shgatpa, PRIV_VERSION_1_12_0, has_priv_1_12),

9
target/riscv/tcg/tcg-cpu.c

@ -451,6 +451,15 @@ static void riscv_cpu_disable_priv_spec_isa_exts(RISCVCPU *cpu)
continue;
}
/*
* cpu.debug = true is marked as 'sdtrig', priv spec 1.12.
* Skip this warning since existing CPUs with older priv
* spec and debug = true will be impacted.
*/
if (!strcmp(edata->name, "sdtrig")) {
continue;
}
isa_ext_update_enabled(cpu, edata->ext_enable_offset, false);
/*

BIN
tests/data/acpi/riscv64/virt/RHCT

Binary file not shown.
Loading…
Cancel
Save