diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 37ed750f8b..ba1432c7e3 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -5082,15 +5082,59 @@ virQEMUCapsInitQMPArch(virQEMUCapsPtr qemuCaps, void virQEMUCapsInitQMPBasicArch(virQEMUCapsPtr qemuCaps) { - /* ACPI only works on x86 and aarch64 */ - if (ARCH_IS_X86(qemuCaps->arch) || - qemuCaps->arch == VIR_ARCH_AARCH64) { + switch (qemuCaps->arch) { + case VIR_ARCH_I686: + case VIR_ARCH_X86_64: + /* ACPI only works on x86 and aarch64 */ virQEMUCapsSet(qemuCaps, QEMU_CAPS_NO_ACPI); - } - /* HPET is x86 specific */ - if (ARCH_IS_X86(qemuCaps->arch)) + /* HPET is x86 specific */ virQEMUCapsSet(qemuCaps, QEMU_CAPS_NO_HPET); + break; + + case VIR_ARCH_AARCH64: + /* ACPI only works on x86 and aarch64 */ + virQEMUCapsSet(qemuCaps, QEMU_CAPS_NO_ACPI); + break; + + case VIR_ARCH_PPC64: + case VIR_ARCH_PPC64LE: + case VIR_ARCH_ALPHA: + case VIR_ARCH_PPC: + case VIR_ARCH_PPCEMB: + case VIR_ARCH_SH4: + case VIR_ARCH_SH4EB: + case VIR_ARCH_RISCV32: + case VIR_ARCH_RISCV64: + case VIR_ARCH_S390: + case VIR_ARCH_S390X: + case VIR_ARCH_SPARC: + case VIR_ARCH_SPARC64: + case VIR_ARCH_ARMV6L: + case VIR_ARCH_ARMV7L: + case VIR_ARCH_ARMV7B: + case VIR_ARCH_CRIS: + case VIR_ARCH_ITANIUM: + case VIR_ARCH_LM32: + case VIR_ARCH_M68K: + case VIR_ARCH_MICROBLAZE: + case VIR_ARCH_MICROBLAZEEL: + case VIR_ARCH_MIPS: + case VIR_ARCH_MIPSEL: + case VIR_ARCH_MIPS64: + case VIR_ARCH_MIPS64EL: + case VIR_ARCH_OR32: + case VIR_ARCH_PARISC: + case VIR_ARCH_PARISC64: + case VIR_ARCH_PPCLE: + case VIR_ARCH_UNICORE32: + case VIR_ARCH_XTENSA: + case VIR_ARCH_XTENSAEB: + case VIR_ARCH_NONE: + case VIR_ARCH_LAST: + default: + break; + } }