aboutsummaryrefslogtreecommitdiff
path: root/arch/riscv/include
diff options
context:
space:
mode:
authorGravatar Atish Patra <atishp@rivosinc.com> 2022-07-11 10:46:31 -0700
committerGravatar Palmer Dabbelt <palmer@rivosinc.com> 2022-08-11 14:58:22 -0700
commit63ba67ebdfd403ef53aa0fefde3a42e505516e8c (patch)
tree48b5c635053d3988ee379dfa762fcce7571ef99f /arch/riscv/include
parentRISC-V: Fix SBI PMU calls for RV32 (diff)
downloadlinux-63ba67ebdfd403ef53aa0fefde3a42e505516e8c.tar.gz
linux-63ba67ebdfd403ef53aa0fefde3a42e505516e8c.tar.bz2
linux-63ba67ebdfd403ef53aa0fefde3a42e505516e8c.zip
RISC-V: Move counter info definition to sbi header file
Counter info encoding format is defined by the SBI specificaiton. KVM implementation of SBI PMU extension will also leverage this definition. Move the definition to common sbi header file from the sbi pmu driver. Signed-off-by: Atish Patra <atishp@rivosinc.com> Link: https://lore.kernel.org/r/20220711174632.4186047-5-atishp@rivosinc.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Diffstat (limited to 'arch/riscv/include')
-rw-r--r--arch/riscv/include/asm/sbi.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/arch/riscv/include/asm/sbi.h b/arch/riscv/include/asm/sbi.h
index 9e3c2cf1edaf..d633ac0f5a32 100644
--- a/arch/riscv/include/asm/sbi.h
+++ b/arch/riscv/include/asm/sbi.h
@@ -122,6 +122,20 @@ enum sbi_ext_pmu_fid {
SBI_EXT_PMU_COUNTER_FW_READ,
};
+union sbi_pmu_ctr_info {
+ unsigned long value;
+ struct {
+ unsigned long csr:12;
+ unsigned long width:6;
+#if __riscv_xlen == 32
+ unsigned long reserved:13;
+#else
+ unsigned long reserved:45;
+#endif
+ unsigned long type:1;
+ };
+};
+
#define RISCV_PMU_RAW_EVENT_MASK GENMASK_ULL(55, 0)
#define RISCV_PMU_RAW_EVENT_IDX 0x20000