hw/riscv/riscv-iommu: add riscv-iommu-hpm file
authorTomasz Jeznach <tjeznach@rivosinc.com>
Mon, 24 Feb 2025 19:08:18 +0000 (16:08 -0300)
committerAlistair Francis <alistair.francis@wdc.com>
Tue, 4 Mar 2025 05:42:54 +0000 (15:42 +1000)
commit4faea7e084dc02c6491b55e594ba5d39a75ff38f
tree06e0b4cf4170304942c008f988fe6aa223f025ab
parent045b19afc9889aa001bab3ae2cb1ecc47b8de790
hw/riscv/riscv-iommu: add riscv-iommu-hpm file

The HPM (Hardware Performance Monitor) support consists of almost 7
hundred lines that would be put on top of the base riscv-iommu
emulation.

To avoid clogging riscv-iommu.c, add a separated riscv-iommu-hpm file
that will contain HPM specific code.

We'll start by adding riscv_iommu_hpmcycle_read(), a helper that will be
called during the riscv_iommu_mmio_read() callback.

This change will have no effect on the existing emulation since we're
not declaring HPM feature support.

Signed-off-by: Tomasz Jeznach <tjeznach@rivosinc.com>
Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20250224190826.1858473-4-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
hw/riscv/meson.build
hw/riscv/riscv-iommu-hpm.c [new file with mode: 0644]
hw/riscv/riscv-iommu-hpm.h [new file with mode: 0644]
hw/riscv/riscv-iommu.c
hw/riscv/riscv-iommu.h