On Mon, Feb 16, 2009 at 09:27:26AM -0600, Anthony Liguori wrote:
Gleb Natapov wrote:
This is needed to dynamically add SLIC tables with Windows
activation keys.
Signed-off-by: Gleb Natapov <address@hidden>
diff --git a/hw/acpi.c b/hw/acpi.c
index 4338d02..7175598 100644
--- a/hw/acpi.c
+++ b/hw/acpi.c
@@ -561,3 +561,170 @@ void qemu_system_powerdown(void)
}
}
#endif
+
+struct acpi_table_header
+{
+ char signature [4]; /* ACPI signature (4 ASCII characters) */
+ uint32_t length; /* Length of table, in bytes, including header */
+ uint8_t revision; /* ACPI Specification minor version # */
+ uint8_t checksum; /* To make sum of entire table == 0 */
+ char oem_id [6]; /* OEM identification */
+ char oem_table_id [8]; /* OEM table identification */
+ uint32_t oem_revision; /* OEM revision number */
+ char asl_compiler_id [4]; /* ASL compiler vendor ID */
+ uint32_t asl_compiler_revision; /* ASL compiler revision number */
+};
I don't have a lot of confidence that this table is going to be padded
correctly by all compilers on all architectures. I'd suggest explicit
padding.
__attribute_((packed)) should be enough, no?