linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/3] Allow accessing CSR using CSR number
@ 2019-04-13 15:38 Anup Patel
  2019-04-13 15:38 ` [PATCH v2 1/3] RISC-V: Add separate asm/encoding.h for spec related defines Anup Patel
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Anup Patel @ 2019-04-13 15:38 UTC (permalink / raw)
  To: Palmer Dabbelt, Albert Ou
  Cc: Atish Patra, Paul Walmsley, Christoph Hellwig, linux-riscv,
	linux-kernel, Anup Patel

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_v2 branch of
https//github.com/avpatel/linux.git

Changes since v1:
 - Squash PATCH2 into cpatch3
 - Added new PATCH2 to add interrupt related SCAUSE defines
   in asm/encoding.h

Anup Patel (3):
  RISC-V: Add separate asm/encoding.h for spec related defines
  RISC-V: Add interrupt related SCAUSE defines in asm/encoding.h
  RISC-V: Access CSRs using CSR numbers

 arch/riscv/include/asm/csr.h         | 67 +++-----------------
 arch/riscv/include/asm/encoding.h    | 95 ++++++++++++++++++++++++++++
 arch/riscv/include/asm/irqflags.h    | 10 +--
 arch/riscv/include/asm/mmu_context.h |  7 +-
 arch/riscv/kernel/entry.S            | 22 +++----
 arch/riscv/kernel/head.S             | 12 ++--
 arch/riscv/kernel/irq.c              |  9 +--
 arch/riscv/kernel/perf_event.c       |  4 +-
 arch/riscv/kernel/smp.c              |  2 +-
 arch/riscv/kernel/traps.c            |  6 +-
 arch/riscv/mm/fault.c                |  6 +-
 11 files changed, 139 insertions(+), 101 deletions(-)
 create mode 100644 arch/riscv/include/asm/encoding.h

--
2.17.1

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2019-04-15  7:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-04-13 15:38 [PATCH v2 0/3] Allow accessing CSR using CSR number Anup Patel
2019-04-13 15:38 ` [PATCH v2 1/3] RISC-V: Add separate asm/encoding.h for spec related defines Anup Patel
2019-04-15  5:49   ` Christoph Hellwig
2019-04-15  7:29     ` Anup Patel
2019-04-13 15:38 ` [PATCH v2 2/3] RISC-V: Add interrupt related SCAUSE defines in asm/encoding.h Anup Patel
2019-04-13 15:38 ` [PATCH v2 3/3] RISC-V: Access CSRs using CSR numbers Anup Patel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).