qemu/tests/qtest/libqos/meson.build
Daniel Henrique Barboza 40b44316d8 test/qtest: add riscv-iommu-pci tests
To test the RISC-V IOMMU emulation we'll use its PCI representation.
Create a new 'riscv-iommu-pci' libqos device that will be present with
CONFIG_RISCV_IOMMU.  This config is only available for RISC-V, so this
device will only be consumed by the RISC-V libqos machine.

Start with basic tests: a PCI sanity check and a reset state register
test. The reset test was taken from the RISC-V IOMMU spec chapter 5.2,
"Reset behavior".

More tests will be added later.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Frank Chang <frank.chang@sifive.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
Message-ID: <20241016204038.649340-8-dbarboza@ventanamicro.com>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
2024-10-31 13:51:24 +10:00

77 lines
1.7 KiB
Meson

libqos_srcs = files(
'../libqtest.c',
'../libqmp.c',
'qgraph.c',
'qos_external.c',
'pci.c',
'fw_cfg.c',
'libqos-malloc.c',
'libqos.c',
'sdhci-cmd.c',
# spapr
'malloc-spapr.c',
'libqos-spapr.c',
'rtas.c',
'pci-spapr.c',
# pc
'pci-pc.c',
'malloc-pc.c',
'libqos-pc.c',
'ahci.c',
# usb
'usb.c',
# qgraph devices:
'e1000e.c',
'i2c.c',
'i2c-imx.c',
'i2c-omap.c',
'igb.c',
'sdhci.c',
'tpci200.c',
'virtio.c',
'virtio-balloon.c',
'virtio-blk.c',
'vhost-user-blk.c',
'virtio-mmio.c',
'virtio-net.c',
'virtio-pci.c',
'virtio-pci-modern.c',
'virtio-rng.c',
'virtio-scsi.c',
'virtio-serial.c',
'virtio-iommu.c',
'virtio-gpio.c',
'virtio-scmi.c',
'generic-pcihost.c',
# qgraph machines:
'aarch64-xlnx-zcu102-machine.c',
'arm-imx25-pdk-machine.c',
'arm-raspi2-machine.c',
'arm-sabrelite-machine.c',
'arm-smdkc210-machine.c',
'arm-virt-machine.c',
'arm-xilinx-zynq-a9-machine.c',
'ppc64_pseries-machine.c',
'x86_64_pc-machine.c',
'riscv-virt-machine.c',
'loongarch-virt-machine.c',
)
if have_virtfs
libqos_srcs += files('virtio-9p.c', 'virtio-9p-client.c')
endif
if config_all_devices.has_key('CONFIG_RISCV_IOMMU')
libqos_srcs += files('riscv-iommu.c')
endif
libqos = static_library('qos', libqos_srcs + genh,
build_by_default: false)
qos = declare_dependency(objects: libqos.extract_all_objects(recursive: false))