For guest bug compat, we limit hpet's interrupt compatibility on ioapic's IRQ2 for pc-q35-1.6. As to pc-35-1.7 and newer, IRQ2, IRQ8, and IRQ16~23 are allowed.
Signed-off-by: Liu Ping Fan <pingf...@linux.vnet.ibm.com> --- hw/timer/hpet.c | 7 ++----- include/hw/i386/pc.h | 4 ++++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/hw/timer/hpet.c b/hw/timer/hpet.c index 46903b9..7af495a 100644 --- a/hw/timer/hpet.c +++ b/hw/timer/hpet.c @@ -43,11 +43,8 @@ #define HPET_MSI_SUPPORT 0 -/* For bug compat, using only IRQ2. Soon it will be fixed as - * 0xff0104ULL, i.e using IRQ16~23, IRQ8 and IRQ2 after - * introducing pc-1.6 compat. - */ -#define HPET_TN_INT_CAP_DEFAULT 0x4ULL +/* using IRQ16~23, IRQ8 and IRQ2 */ +#define HPET_TN_INT_CAP_DEFAULT 0xff0104ULL #define TYPE_HPET "hpet" #define HPET(obj) OBJECT_CHECK(HPETState, (obj), TYPE_HPET) diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h index 9dd077f..79c63b3 100644 --- a/include/hw/i386/pc.h +++ b/include/hw/i386/pc.h @@ -231,6 +231,10 @@ int e820_add_entry(uint64_t, uint64_t, uint32_t); .driver = "e1000",\ .property = "mitigation",\ .value = "off",\ + },{\ + .driver = "hpet",\ + .property = "intcap",\ + .value = stringify(4),\ } #define PC_COMPAT_1_5 \ -- 1.8.1.4