[PATCH v3 0/4] Add PMEM support for RISC-V

From: Anup Patel
Date: Wed Oct 19 2022 - 09:06:36 EST


The Linux NVDIMM PEM drivers require arch support to map and access the
persistent memory device. This series adds RISC-V PMEM support using
recently added Svpbmt and Zicbom support.

First two patches are fixes and remaining two patches add the required
PMEM support for Linux RISC-V.

These patches can also be found in riscv_pmem_v3 branch at:
https://github.com/avpatel/linux.git

Changes since v2:
- Rebased on Linux-6.1-rc1
- Replaced PATCH1 with the patch proposed by Drew

Changes since v1:
- Fix error reported by test bot
https://lore.kernel.org/all/202208272028.IwrNZ0Ur-lkp@xxxxxxxxx/

Andrew Jones (1):
RISC-V: Fix compilation without RISCV_ISA_ZICBOM

Anup Patel (3):
RISC-V: Fix ioremap_cache() and ioremap_wc() for systems with Svpbmt
RISC-V: Implement arch specific PMEM APIs
RISC-V: Enable PMEM drivers

arch/riscv/Kconfig | 1 +
arch/riscv/configs/defconfig | 1 +
arch/riscv/include/asm/io.h | 10 ++++++++
arch/riscv/include/asm/pgtable.h | 2 ++
arch/riscv/mm/Makefile | 1 +
arch/riscv/mm/cacheflush.c | 41 ++++++++++++++++++++++++++++++++
arch/riscv/mm/dma-noncoherent.c | 41 --------------------------------
arch/riscv/mm/pmem.c | 21 ++++++++++++++++
8 files changed, 77 insertions(+), 41 deletions(-)
create mode 100644 arch/riscv/mm/pmem.c

--
2.34.1