qemu-riscv
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v7 1/2] hw/misc/riscv_iopmp: Add RISC-V IOPMP device


From: Stefan Weil
Subject: Re: [PATCH v7 1/2] hw/misc/riscv_iopmp: Add RISC-V IOPMP device
Date: Mon, 17 Jun 2024 14:09:34 +0200
User-agent: Mozilla Thunderbird

Am 12.06.24 um 05:17 schrieb Ethan Chen via:
Support basic functions of IOPMP specification v0.9.1 rapid-k model.
The specification url:
https://github.com/riscv-non-isa/iopmp-spec/releases/tag/v0.9.1

IOPMP check memory access from device is valid or not. This implementation uses
IOMMU to change address space that device access. There are three possible
results of an access: valid, blocked, and stalled(stall is not supported in this
  patch).

If an access is valid, target address space is downstream_as.
If an access is blocked, it will go to blocked_io_as. The operation of
blocked_io_as could be a bus error, or it can respond a success with fabricated
data depending on IOPMP ERR_CFG register value.

Signed-off-by: Ethan Chen <ethan84@andestech.com>
---
  hw/misc/Kconfig               |    3 +
  hw/misc/meson.build           |    1 +
  hw/misc/riscv_iopmp.c         | 1002 +++++++++++++++++++++++++++++++++
  hw/misc/trace-events          |    4 +
  include/hw/misc/riscv_iopmp.h |  152 +++++
  5 files changed, 1162 insertions(+)
  create mode 100644 hw/misc/riscv_iopmp.c
  create mode 100644 include/hw/misc/riscv_iopmp.h

Should both new files have SPDX license identifiers?

Regards,
Stefan W.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]