You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/hw/riscv
Guo Ren (Alibaba DAMO Academy) 15abfced80 hw/riscv/riscv-iommu: Fixup PDT Nested Walk
Current implementation is wrong when iohgatp != bare. The RISC-V
IOMMU specification has defined that the PDT is based on GPA, not
SPA. So this patch fixes the problem, making PDT walk correctly
when the G-stage table walk is enabled.

Fixes: 0c54acb824 ("hw/riscv: add RISC-V IOMMU base emulation")
Cc: qemu-stable@nongnu.org
Cc: Sebastien Boeuf <seb@rivosinc.com>
Cc: Tomasz Jeznach <tjeznach@rivosinc.com>
Reviewed-by: Weiwei Li <liwei1518@gmail.com>
Reviewed-by: Nutty Liu <liujingqi@lanxincomputing.com>
Signed-off-by: Guo Ren (Alibaba DAMO Academy) <guoren@kernel.org>
Tested-by: Chen Pei <cp0613@linux.alibaba.com>
Tested-by: Fangyu Yu <fangyu.yu@linux.alibaba.com>
Message-ID: <20250913041233.972870-1-guoren@kernel.org>
[ Changes by AF:
 - Add braces to if statements
]
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
3 weeks ago
..
Kconfig hw/riscv: Initial support for BOSC's Xiangshan Kunminghu FPGA prototype 4 months ago
boot.c target/riscv: store RISCVCPUDef struct directly in the class 5 months ago
meson.build hw/riscv: Initial support for BOSC's Xiangshan Kunminghu FPGA prototype 4 months ago
microblaze-v-generic.c include/system: Move exec/address-spaces.h to system/address-spaces.h 6 months ago
microchip_pfsoc.c hw/riscv: Configurable MPFS CLINT timebase freq 5 months ago
numa.c include: Rename sysemu/ -> system/ 10 months ago
opentitan.c qom: Have class_init() take a const data argument 6 months ago
riscv-iommu-bits.h target: riscv: Add Svrsw60t59b extension support 4 months ago
riscv-iommu-hpm.c hw/riscv: add IOMMU HPM trace events 8 months ago
riscv-iommu-hpm.h hw/riscv/riscv-iommu: add hpm events mmio write 8 months ago
riscv-iommu-pci.c hw/riscv/riscv-iommu: Remove definition of RISCVIOMMU[Pci|Sys]Class 5 months ago
riscv-iommu-sys.c hw/riscv/riscv-iommu: Remove definition of RISCVIOMMU[Pci|Sys]Class 5 months ago
riscv-iommu.c hw/riscv/riscv-iommu: Fixup PDT Nested Walk 3 weeks ago
riscv-iommu.h hw/riscv/riscv-iommu: add hpm events mmio write 8 months ago
riscv_hart.c target/riscv: Pass ra to riscv_csrrw 5 months ago
shakti_c.c qom: Have class_init() take a const data argument 6 months ago
sifive_e.c qom: Have class_init() take a const data argument 6 months ago
sifive_u.c qom: Have class_init() take a const data argument 6 months ago
spike.c qom: Have class_init() take a const data argument 6 months ago
trace-events hw/riscv: add IOMMU HPM trace events 8 months ago
trace.h hw/riscv: add RISC-V IOMMU base emulation 12 months ago
virt-acpi-build.c hw/riscv/virt-acpi-build.c: Update FADT and MADT versions 3 months ago
virt.c hw/riscv/virt: Use setprop_sized_cells for pcie 4 months ago
xiangshan_kmh.c hw/riscv: Initial support for BOSC's Xiangshan Kunminghu FPGA prototype 4 months ago