qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v6 0/5] support subsets of virtual memory extension
@ 2022-01-25  6:45 Weiwei Li
  2022-01-25  6:45 ` [PATCH v6 1/5] target/riscv: Ignore reserved bits in PTE for RV64 Weiwei Li
                   ` (5 more replies)
  0 siblings, 6 replies; 15+ messages in thread
From: Weiwei Li @ 2022-01-25  6:45 UTC (permalink / raw)
  To: anup, palmer, alistair.francis, bin.meng, qemu-riscv, qemu-devel
  Cc: wangjunqiang, Weiwei Li, lazyparser, ren_guo

This patchset implements virtual memory related RISC-V extensions: Svnapot version 1.0, Svinval vesion 1.0, Svpbmt version 1.0. 

Specification:
https://github.com/riscv/virtual-memory/tree/main/specs

The port is available here:
https://github.com/plctlab/plct-qemu/tree/plct-virtmem-upstream-v6

To test this implementation, specify cpu argument with 'svinval=true,svnapot=true,svpbmt=true'.

This implementation can pass the riscv-tests for rv64ssvnapot.

v6:
* select ppn mask base on sxl

v5:
* merge patch https://lore.kernel.org/qemu-devel/1569456861-8502-1-git-send-email-guoren@kernel.org/
* relax pte attribute check

v4:
* fix encodings for hinval_vvma and hinval_gvma
* partition inner PTE check into several steps
* improve commit messages to describe changes

v3:
* drop "x-" in exposed properties

v2:
* add extension check for svnapot and svpbmt

Guo Ren (1):
  target/riscv: Ignore reserved bits in PTE for RV64

Weiwei Li (4):
  target/riscv: add PTE_A/PTE_D/PTE_U bits check for inner PTE
  target/riscv: add support for svnapot extension
  target/riscv: add support for svinval extension
  target/riscv: add support for svpbmt extension

 target/riscv/cpu.c                          |  4 ++
 target/riscv/cpu.h                          | 14 ++++
 target/riscv/cpu_bits.h                     | 10 +++
 target/riscv/cpu_helper.c                   | 34 +++++++++-
 target/riscv/insn32.decode                  |  7 ++
 target/riscv/insn_trans/trans_svinval.c.inc | 75 +++++++++++++++++++++
 target/riscv/translate.c                    |  1 +
 7 files changed, 142 insertions(+), 3 deletions(-)
 create mode 100644 target/riscv/insn_trans/trans_svinval.c.inc

-- 
2.17.1



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

end of thread, other threads:[~2022-01-28  7:56 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-25  6:45 [PATCH v6 0/5] support subsets of virtual memory extension Weiwei Li
2022-01-25  6:45 ` [PATCH v6 1/5] target/riscv: Ignore reserved bits in PTE for RV64 Weiwei Li
2022-01-25  8:13   ` LIU Zhiwei
2022-01-25  8:40     ` Guo Ren
2022-01-25  8:54       ` LIU Zhiwei
2022-01-25  9:00         ` Guo Ren
2022-01-25  9:44           ` Weiwei Li
2022-01-28  3:56             ` Guo Ren
2022-01-25  6:45 ` [PATCH v6 2/5] target/riscv: add PTE_A/PTE_D/PTE_U bits check for inner PTE Weiwei Li
2022-01-28  5:40   ` Alistair Francis
2022-01-28  7:37     ` Weiwei Li
2022-01-25  6:45 ` [PATCH v6 3/5] target/riscv: add support for svnapot extension Weiwei Li
2022-01-25  6:45 ` [PATCH v6 4/5] target/riscv: add support for svinval extension Weiwei Li
2022-01-25  6:45 ` [PATCH v6 5/5] target/riscv: add support for svpbmt extension Weiwei Li
2022-01-25  8:42 ` [PATCH v6 0/5] support subsets of virtual memory extension Guo Ren

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).