[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 0/6] Support discontinuous PMU counters
From: |
Rob Bradford |
Subject: |
[PATCH v3 0/6] Support discontinuous PMU counters |
Date: |
Fri, 13 Oct 2023 11:54:42 +0100 |
Currently the available PMU counters start at HPM3 and run through to
the number specified by the "pmu-num" property. There is no
requirement in the specification that the available counters be
continously numbered. This series add suppport for specifying a
discountinuous range of counters though a "pmu-mask" property.
v3:
* Use env_archcpu() in csr.c
* Re-added check to enforce deprectated "num-pmu" below limit
* Check that standard counters are not included in mask
* Remove use of MAKE_32BIT_MASK()
v2:
* Use cfg.pmu_mask wherever cfg.pmu_num was used previously
* Deprecate pmu_num property (warning, comment & updated documentation)
* Override default pmu_mask value iff pmu_num changed from default
Rob Bradford (6):
target/riscv: Propagate error from PMU setup
target/riscv: Don't assume PMU counters are continuous
target/riscv: Use existing PMU counter mask in FDT generation
target/riscv: Add "pmu-mask" property to replace "pmu-num"
docs/about/deprecated: Document RISC-V "pmu-num" deprecation
target/riscv: Use MAKE_64BIT_MASK instead of custom macro
docs/about/deprecated.rst | 10 ++++++++++
hw/riscv/virt.c | 2 +-
target/riscv/cpu.c | 13 ++++++++++---
target/riscv/cpu_cfg.h | 3 ++-
target/riscv/csr.c | 5 +++--
target/riscv/machine.c | 2 +-
target/riscv/pmu.c | 41 ++++++++++++++++++++++-----------------
target/riscv/pmu.h | 5 +++--
8 files changed, 53 insertions(+), 28 deletions(-)
--
2.41.0
- [PATCH v3 0/6] Support discontinuous PMU counters,
Rob Bradford <=
- [PATCH v3 1/6] target/riscv: Propagate error from PMU setup, Rob Bradford, 2023/10/13
- [PATCH v3 5/6] docs/about/deprecated: Document RISC-V "pmu-num" deprecation, Rob Bradford, 2023/10/13
- [PATCH v3 4/6] target/riscv: Add "pmu-mask" property to replace "pmu-num", Rob Bradford, 2023/10/13
- [PATCH v3 6/6] target/riscv: Use MAKE_64BIT_MASK instead of custom macro, Rob Bradford, 2023/10/13
- [PATCH v3 2/6] target/riscv: Don't assume PMU counters are continuous, Rob Bradford, 2023/10/13
- [PATCH v3 3/6] target/riscv: Use existing PMU counter mask in FDT generation, Rob Bradford, 2023/10/13