hvmloader: always include HPET table

Windows SVVP tests require an HPET table even if the HPET is disabled.
This makes sense since the HPET _is_ in the DSDT and, while the OS
does not know that, in principle it's status may change.

(For what it's worth SeaBIOS, in addition to doing this, totally
ignores QEMU's -no-hpet flag and always reports 0x0f for the HPET's
_STA method).

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Keir Fraser <keir@xen.org>
This commit is contained in:
Paolo Bonzini committed 2011-05-20 09:15:40 +01:00
1 parent 8b6d448c66
commit e4fd0475a0
1 file changed
+5 -7
+5 -7
View File
@@ -189,13 +189,11 @@ static int construct_secondary_tables(uint8_t *buf, unsigned long *table_ptrs)
table_ptrs[nr_tables++] = (unsigned long)madt;
}
/* HPET. */
if ( hpet_exists(ACPI_HPET_ADDRESS) )
{
hpet = (struct acpi_20_hpet *)&buf[offset];
offset += construct_hpet(hpet);
table_ptrs[nr_tables++] = (unsigned long)hpet;
}
/* HPET. Always included in DSDT, so always include it here too. */
/* (And it's unconditionally required by Windows SVVP tests.) */
hpet = (struct acpi_20_hpet *)&buf[offset];
offset += construct_hpet(hpet);
table_ptrs[nr_tables++] = (unsigned long)hpet;
if ( battery_port_exists() )
{
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.