[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190413073906.53676-1-anup.patel@wdc.com>
Date: Sat, 13 Apr 2019 07:39:30 +0000
From: Anup Patel <Anup.Patel@....com>
To: Palmer Dabbelt <palmer@...ive.com>,
Albert Ou <aou@...s.berkeley.edu>
CC: Atish Patra <Atish.Patra@....com>,
Paul Walmsley <paul.walmsley@...ive.com>,
Christoph Hellwig <hch@...radead.org>,
"linux-riscv@...ts.infradead.org" <linux-riscv@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Anup Patel <Anup.Patel@....com>
Subject: [PATCH 0/3] Allow accessing CSR using CSR number
This patch series adds support to access CSR using both CSR name and
CSR numbers.
Also, we should prefer accessing CSRs using their CSR numbers because:
1. It compiles fine with older toolchains.
2. We can use latest CSR names in #define macro names of CSR numbers
as-per RISC-V spec. (e.g. sptbr => CSR_SATP, sbadaddr => CSR_STVAL, etc.)
3. We can access newly added CSRs even if toolchain does not recognize
newly addes CSRs by name. (e.g. BSSTATUS, BSIE, SSIP, etc.)
The patchset can be found in riscv_csr_number_v1 branch of
https//github.com/avpatel/linux.git
Anup Patel (3):
RISC-V: Add separate asm/encoding.h for spec related defines
RISC-V: Add defines for CSR numbers
RISC-V: Access CSRs using CSR numbers
arch/riscv/include/asm/csr.h | 67 +-----
arch/riscv/include/asm/encoding.h | 299 +++++++++++++++++++++++++++
arch/riscv/include/asm/irqflags.h | 10 +-
arch/riscv/include/asm/mmu_context.h | 2 +-
arch/riscv/kernel/entry.S | 22 +-
arch/riscv/kernel/head.S | 12 +-
arch/riscv/kernel/perf_event.c | 4 +-
arch/riscv/kernel/smp.c | 2 +-
arch/riscv/kernel/traps.c | 6 +-
arch/riscv/mm/fault.c | 2 +-
10 files changed, 338 insertions(+), 88 deletions(-)
create mode 100644 arch/riscv/include/asm/encoding.h
--
2.17.1
Powered by blists - more mailing lists