Currently, bios-table-test doesn't support RISC-V. This series enables the framework changes required and basic testing. Things like NUMA related test cases will be added later.
This needs refactoring/renaming of ARM64 bios table tests. Importantly, the test cases now look for the expected AML files under tests/data/acpi/virt/aarch64 path instead of directly under tests/data/acpi/virt. To keep test cases not to fail because of this movement, they are updated to look for both paths first. As part of this effort, it is found that uefi-test-tools is currently broken to build. So, updated its Makefile as well to use python based edk2 build script. The series depends on Gerd's below series. https://lists.gnu.org/archive/html/qemu-devel/2024-03/msg03855.html The changes are also available at branch https://gitlab.com/vlsunil/qemu/-/tree/riscv_bios_table_test_v1 This branch which is on top of Gerd's series completed CI tests. https://gitlab.com/vlsunil/qemu/-/pipelines/1214784985 Sunil V L (12): roms/edk2-build.py: Add --module support uefi-test-tools/UefiTestToolsPkg: Add RISC-V support uefi-test-tools: Add support for python based build script tests/data/uefi-boot-images: Add RISC-V ISO image qtest: bios-tables-test: Rename aarch64 tests with aarch64 in them tests/qtest/bios-tables-test.c: Add support for arch in path tests/data/acpi/virt: Move ACPI tables under aarch64 meson.build: Add RISC-V to the edk2-target list pc-bios/meson.build: Add support for RISC-V in unpack_edk2_blobs tests/data/acpi/rebuild-expected-aml.sh: Add RISC-V tests/data/acpi/virt/riscv64: Add expected ACPI tables for RISC-V tests/qtest/bios-tables-test.c: Enable basic testing for RISC-V meson.build | 2 +- pc-bios/meson.build | 2 + roms/edk2-build.py | 3 + tests/data/acpi/rebuild-expected-aml.sh | 5 +- tests/data/acpi/virt/{ => aarch64}/APIC | Bin .../acpi/virt/{ => aarch64}/APIC.acpihmatvirt | Bin .../acpi/virt/{ => aarch64}/APIC.topology | Bin tests/data/acpi/virt/{ => aarch64}/DBG2 | Bin tests/data/acpi/virt/{ => aarch64}/DSDT | Bin .../acpi/virt/{ => aarch64}/DSDT.acpihmatvirt | Bin tests/data/acpi/virt/{ => aarch64}/DSDT.memhp | Bin tests/data/acpi/virt/{ => aarch64}/DSDT.pxb | Bin .../acpi/virt/{ => aarch64}/DSDT.topology | Bin tests/data/acpi/virt/{ => aarch64}/FACP | Bin tests/data/acpi/virt/{ => aarch64}/GTDT | Bin .../acpi/virt/{ => aarch64}/HMAT.acpihmatvirt | Bin tests/data/acpi/virt/{ => aarch64}/IORT | Bin tests/data/acpi/virt/{ => aarch64}/MCFG | Bin tests/data/acpi/virt/{ => aarch64}/NFIT.memhp | Bin tests/data/acpi/virt/{ => aarch64}/PPTT | Bin .../acpi/virt/{ => aarch64}/PPTT.acpihmatvirt | Bin .../acpi/virt/{ => aarch64}/PPTT.topology | Bin tests/data/acpi/virt/{ => aarch64}/SLIT.memhp | Bin tests/data/acpi/virt/{ => aarch64}/SPCR | Bin .../acpi/virt/{ => aarch64}/SRAT.acpihmatvirt | Bin tests/data/acpi/virt/{ => aarch64}/SRAT.memhp | Bin .../data/acpi/virt/{ => aarch64}/SRAT.numamem | Bin tests/data/acpi/virt/{ => aarch64}/SSDT.memhp | Bin tests/data/acpi/virt/{ => aarch64}/VIOT | Bin tests/data/acpi/virt/riscv64/APIC | Bin 0 -> 116 bytes tests/data/acpi/virt/riscv64/BGRT | Bin 0 -> 56 bytes tests/data/acpi/virt/riscv64/DSDT | Bin 0 -> 3518 bytes tests/data/acpi/virt/riscv64/FACP | Bin 0 -> 276 bytes tests/data/acpi/virt/riscv64/MCFG | Bin 0 -> 60 bytes tests/data/acpi/virt/riscv64/RHCT | Bin 0 -> 314 bytes tests/data/acpi/virt/riscv64/RSDP | Bin 0 -> 36 bytes tests/data/acpi/virt/riscv64/SPCR | Bin 0 -> 80 bytes tests/data/acpi/virt/riscv64/XSDT | Bin 0 -> 84 bytes .../bios-tables-test.riscv64.iso.qcow2 | Bin 0 -> 16896 bytes tests/qtest/bios-tables-test.c | 95 ++++++++++++++---- tests/qtest/meson.build | 3 + tests/uefi-test-tools/Makefile | 18 ++-- .../UefiTestToolsPkg/UefiTestToolsPkg.dsc | 6 +- tests/uefi-test-tools/uefi-test-build.config | 57 +++++++++++ 44 files changed, 156 insertions(+), 35 deletions(-) rename tests/data/acpi/virt/{ => aarch64}/APIC (100%) rename tests/data/acpi/virt/{ => aarch64}/APIC.acpihmatvirt (100%) rename tests/data/acpi/virt/{ => aarch64}/APIC.topology (100%) rename tests/data/acpi/virt/{ => aarch64}/DBG2 (100%) rename tests/data/acpi/virt/{ => aarch64}/DSDT (100%) rename tests/data/acpi/virt/{ => aarch64}/DSDT.acpihmatvirt (100%) rename tests/data/acpi/virt/{ => aarch64}/DSDT.memhp (100%) rename tests/data/acpi/virt/{ => aarch64}/DSDT.pxb (100%) rename tests/data/acpi/virt/{ => aarch64}/DSDT.topology (100%) rename tests/data/acpi/virt/{ => aarch64}/FACP (100%) rename tests/data/acpi/virt/{ => aarch64}/GTDT (100%) rename tests/data/acpi/virt/{ => aarch64}/HMAT.acpihmatvirt (100%) rename tests/data/acpi/virt/{ => aarch64}/IORT (100%) rename tests/data/acpi/virt/{ => aarch64}/MCFG (100%) rename tests/data/acpi/virt/{ => aarch64}/NFIT.memhp (100%) rename tests/data/acpi/virt/{ => aarch64}/PPTT (100%) rename tests/data/acpi/virt/{ => aarch64}/PPTT.acpihmatvirt (100%) rename tests/data/acpi/virt/{ => aarch64}/PPTT.topology (100%) rename tests/data/acpi/virt/{ => aarch64}/SLIT.memhp (100%) rename tests/data/acpi/virt/{ => aarch64}/SPCR (100%) rename tests/data/acpi/virt/{ => aarch64}/SRAT.acpihmatvirt (100%) rename tests/data/acpi/virt/{ => aarch64}/SRAT.memhp (100%) rename tests/data/acpi/virt/{ => aarch64}/SRAT.numamem (100%) rename tests/data/acpi/virt/{ => aarch64}/SSDT.memhp (100%) rename tests/data/acpi/virt/{ => aarch64}/VIOT (100%) create mode 100755 tests/data/acpi/virt/riscv64/APIC create mode 100755 tests/data/acpi/virt/riscv64/BGRT create mode 100755 tests/data/acpi/virt/riscv64/DSDT create mode 100755 tests/data/acpi/virt/riscv64/FACP create mode 100755 tests/data/acpi/virt/riscv64/MCFG create mode 100755 tests/data/acpi/virt/riscv64/RHCT create mode 100755 tests/data/acpi/virt/riscv64/RSDP create mode 100755 tests/data/acpi/virt/riscv64/SPCR create mode 100755 tests/data/acpi/virt/riscv64/XSDT create mode 100644 tests/data/uefi-boot-images/bios-tables-test.riscv64.iso.qcow2 create mode 100644 tests/uefi-test-tools/uefi-test-build.config -- 2.40.1