target/riscv: Add "pmu-mask" property to replace "pmu-num"
Using a mask instead of the number of PMU devices supports the accurate emulation of platforms that have a discontinuous set of PMU counters. The "pmu-num" property now generates a warning when used by the user on the command line. Rather than storing the value for "pmu-num" convert it directly to the mask if it is specified (overwriting the default "pmu-mask" value) likewise the value is calculated from the mask if the property value is obtained. In the unusual situation that both "pmu-mask" and "pmu-num" are provided then then the order on the command line determines which takes precedence (later overwriting earlier.) Signed-off-by:Rob Bradford <rbradford@rivosinc.com> Reviewed-by:
Alistair Francis <alistair.francis@wdc.com> Message-ID: <20231031154000.18134-5-rbradford@rivosinc.com> [Changes by AF - Fixup ext_zihpm logic after rebase ] Signed-off-by:
Alistair Francis <alistair.francis@wdc.com>
Showing
- target/riscv/cpu.c 39 additions, 1 deletiontarget/riscv/cpu.c
- target/riscv/cpu_cfg.h 1 addition, 1 deletiontarget/riscv/cpu_cfg.h
- target/riscv/machine.c 1 addition, 1 deletiontarget/riscv/machine.c
- target/riscv/pmu.c 8 additions, 7 deletionstarget/riscv/pmu.c
- target/riscv/tcg/tcg-cpu.c 2 additions, 2 deletionstarget/riscv/tcg/tcg-cpu.c
Please register or sign in to comment