Some of the RISC-V drivers (such as RISC-V PMU and ACPI CPPC) need to access CSR based on CSR number discovered from somewhere. Add common RISC-V csr_read_num() and csr_write_num() functions under arch/riscv for such drivers. These patches can be found in the riscv_csr_read_num_v2 branch at: https://github.com/avpatel/linux.git Changes since v1: - Make "out_err" mandatory for csr_read_num() and csr_write_num() in PATCH2 as suggested by Sunil and Drew. This also helps further simplify csr_read_num() and csr_write_num(). Anup Patel (2): ACPI: RISC-V: Fix FFH_CPPC_CSR error handling RISC-V: Add common csr_read_num() and csr_write_num() functions arch/riscv/include/asm/csr.h | 3 + arch/riscv/kernel/Makefile | 1 + arch/riscv/kernel/csr.c | 165 +++++++++++++++++++++++++++++++++++ drivers/acpi/riscv/cppc.c | 21 ++--- drivers/perf/riscv_pmu.c | 54 ++---------- 5 files changed, 186 insertions(+), 58 deletions(-) create mode 100644 arch/riscv/kernel/csr.c -- 2.43.0