aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2020-12-10 12:53:01 +0000
committerPeter Maydell <peter.maydell@linaro.org>2020-12-10 12:53:01 +0000
commit00ef48ff0de9c3e5834e7e3f6691bbc80d08c114 (patch)
treea7951d85541644a945f1a9337465c4b3102da902 /tests
parent180834dcb8277a687b62f035b477abfd5a1ff978 (diff)
parent08af4e13f8d4db099bc444f83879c32459df7f3a (diff)
Merge remote-tracking branch 'remotes/kraxel/tags/microvm-20201210-pull-request' into staging
microvm: add support for second ioapic # gpg: Signature made Thu 10 Dec 2020 12:13:42 GMT # gpg: using RSA key 4CB6D8EED3E87138 # gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>" [full] # gpg: aka "Gerd Hoffmann <gerd@kraxel.org>" [full] # gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>" [full] # Primary key fingerprint: A032 8CFF B93A 17A7 9901 FE7D 4CB6 D8EE D3E8 7138 * remotes/kraxel/tags/microvm-20201210-pull-request: tests/acpi: disallow updates for expected data files tests/acpi: update expected data files tests/acpi: add ioapic2=on test for microvm tests/acpi: add data files for ioapic2 test variant tests/acpi: allow updates for expected data files microvm: add second ioapic microvm: drop microvm_gsi_handler() microvm: make pcie irq base runtime changeable microvm: make number of virtio transports runtime changeable x86: add support for second ioapic x86: rewrite gsi_handler() Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/data/acpi/microvm/APIC.ioapic2bin0 -> 82 bytes
-rw-r--r--tests/data/acpi/microvm/DSDT.ioapic2bin0 -> 365 bytes
-rw-r--r--tests/qtest/bios-tables-test.c20
3 files changed, 16 insertions, 4 deletions
diff --git a/tests/data/acpi/microvm/APIC.ioapic2 b/tests/data/acpi/microvm/APIC.ioapic2
new file mode 100644
index 0000000000..a305f89d99
--- /dev/null
+++ b/tests/data/acpi/microvm/APIC.ioapic2
Binary files differ
diff --git a/tests/data/acpi/microvm/DSDT.ioapic2 b/tests/data/acpi/microvm/DSDT.ioapic2
new file mode 100644
index 0000000000..aee44dd3de
--- /dev/null
+++ b/tests/data/acpi/microvm/DSDT.ioapic2
Binary files differ
diff --git a/tests/qtest/bios-tables-test.c b/tests/qtest/bios-tables-test.c
index 64a9a772ee..f2f79dd6a4 100644
--- a/tests/qtest/bios-tables-test.c
+++ b/tests/qtest/bios-tables-test.c
@@ -1124,7 +1124,7 @@ static void test_acpi_microvm_tcg(void)
test_data data;
test_acpi_microvm_prepare(&data);
- test_acpi_one(" -machine microvm,acpi=on,rtc=off",
+ test_acpi_one(" -machine microvm,acpi=on,ioapic2=off,rtc=off",
&data);
free_test_data(&data);
}
@@ -1135,7 +1135,7 @@ static void test_acpi_microvm_usb_tcg(void)
test_acpi_microvm_prepare(&data);
data.variant = ".usb";
- test_acpi_one(" -machine microvm,acpi=on,usb=on,rtc=off",
+ test_acpi_one(" -machine microvm,acpi=on,ioapic2=off,usb=on,rtc=off",
&data);
free_test_data(&data);
}
@@ -1146,7 +1146,7 @@ static void test_acpi_microvm_rtc_tcg(void)
test_acpi_microvm_prepare(&data);
data.variant = ".rtc";
- test_acpi_one(" -machine microvm,acpi=on,rtc=on",
+ test_acpi_one(" -machine microvm,acpi=on,ioapic2=off,rtc=on",
&data);
free_test_data(&data);
}
@@ -1158,7 +1158,18 @@ static void test_acpi_microvm_pcie_tcg(void)
test_acpi_microvm_prepare(&data);
data.variant = ".pcie";
data.tcg_only = true; /* need constant host-phys-bits */
- test_acpi_one(" -machine microvm,acpi=on,rtc=off,pcie=on",
+ test_acpi_one(" -machine microvm,acpi=on,ioapic2=off,rtc=off,pcie=on",
+ &data);
+ free_test_data(&data);
+}
+
+static void test_acpi_microvm_ioapic2_tcg(void)
+{
+ test_data data;
+
+ test_acpi_microvm_prepare(&data);
+ data.variant = ".ioapic2";
+ test_acpi_one(" -machine microvm,acpi=on,ioapic2=on,rtc=off",
&data);
free_test_data(&data);
}
@@ -1323,6 +1334,7 @@ int main(int argc, char *argv[])
qtest_add_func("acpi/microvm", test_acpi_microvm_tcg);
qtest_add_func("acpi/microvm/usb", test_acpi_microvm_usb_tcg);
qtest_add_func("acpi/microvm/rtc", test_acpi_microvm_rtc_tcg);
+ qtest_add_func("acpi/microvm/ioapic2", test_acpi_microvm_ioapic2_tcg);
if (strcmp(arch, "x86_64") == 0) {
qtest_add_func("acpi/microvm/pcie", test_acpi_microvm_pcie_tcg);
}