[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [HVM] Rationalise OEM and Creator IDs and Table Revisions.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxxx # Date 1167493513 0 # Node ID 63fb88610e1eea29feec1fe32fc96ff63811a6f6 # Parent a578c9703416de6cde4d7aabcc6f1a9910a012c8 [HVM] Rationalise OEM and Creator IDs and Table Revisions. Create virtualised IDs and use them consistently. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> --- tools/firmware/hvmloader/acpi/Makefile | 2 - tools/firmware/hvmloader/acpi/acpi2_0.h | 33 ++++++++++++++------------ tools/firmware/hvmloader/acpi/build.c | 19 +++++++------- tools/firmware/hvmloader/acpi/dsdt.asl | 2 - tools/firmware/hvmloader/acpi/dsdt.c | 18 +++++++------- tools/firmware/hvmloader/acpi/ssdt_tpm.asl | 4 +-- tools/firmware/hvmloader/acpi/ssdt_tpm.h | 10 +++---- tools/firmware/hvmloader/acpi/static_tables.c | 4 +-- tools/firmware/vmxassist/vm86.c | 4 +-- 9 files changed, 49 insertions(+), 47 deletions(-) diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/Makefile --- a/tools/firmware/hvmloader/acpi/Makefile Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/Makefile Sat Dec 30 15:45:13 2006 +0000 @@ -24,7 +24,7 @@ H_SRC = $(wildcard *.h) H_SRC = $(wildcard *.h) OBJS = $(patsubst %.c,%.o,$(C_SRC)) -IASL_VER = acpica-unix-20050513 +IASL_VER = acpica-unix-20060707 IASL_URL = http://developer.intel.com/technology/iapc/acpi/downloads/$(IASL_VER).tar.gz # Disable PIE/SSP if GCC supports them. They can break us. diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/acpi2_0.h --- a/tools/firmware/hvmloader/acpi/acpi2_0.h Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/acpi2_0.h Sat Dec 30 15:45:13 2006 +0000 @@ -50,17 +50,18 @@ struct acpi_header { uint8_t revision; uint8_t checksum; uint8_t oem_id[6]; - uint64_t oem_table_id; + uint8_t oem_table_id[8]; uint32_t oem_revision; uint32_t creator_id; uint32_t creator_revision; }; -#define ACPI_OEM_ID {'I','N','T','E','L',' '} -#define ACPI_OEM_TABLE_ID ASCII32(' ','T','B','D') -#define ACPI_OEM_REVISION 0x00000002 -#define ACPI_CREATOR_ID 0x00 /* TBD */ -#define ACPI_CREATOR_REVISION 0x00000002 +#define ACPI_OEM_ID "Xen" +#define ACPI_OEM_TABLE_ID "HVM" +#define ACPI_OEM_REVISION 0 + +#define ACPI_CREATOR_ID ASCII32('H','V','M','L') /* HVMLoader */ +#define ACPI_CREATOR_REVISION 0 /* * ACPI 2.0 Generic Address Space definition. @@ -121,7 +122,6 @@ struct acpi_20_rsdt { struct acpi_header header; uint32_t entry[1]; }; -#define ACPI_2_0_RSDT_REVISION 0x01 /* * Extended System Description Table (XSDT). @@ -130,7 +130,6 @@ struct acpi_20_xsdt { struct acpi_header header; uint64_t entry[1]; }; -#define ACPI_2_0_XSDT_REVISION 0x01 /* * TCG Hardware Interface Table (TCPA) @@ -141,8 +140,6 @@ struct acpi_20_tcpa { uint32_t laml; uint64_t lasa; }; - -#define ACPI_2_0_TCPA_REVISION 0x02 #define ACPI_2_0_TCPA_LAML_SIZE (64*1024) /* @@ -202,7 +199,6 @@ struct acpi_20_fadt { struct acpi_20_generic_address x_gpe0_blk; struct acpi_20_generic_address x_gpe1_blk; }; -#define ACPI_2_0_FADT_REVISION 0x03 /* * FADT Boot Architecture Flags. @@ -254,8 +250,6 @@ struct acpi_20_madt { uint32_t flags; }; -#define ACPI_2_0_MADT_REVISION 0x01 - /* * HPET Description Table @@ -268,8 +262,6 @@ struct acpi_20_hpet { uint16_t min_tick; uint8_t page_protect; }; - -#define ACPI_2_0_HPET_REVISION 0x01 #define ACPI_HPET_ADDRESS 0xFED00000UL /* @@ -343,6 +335,17 @@ struct acpi_20_madt_intsrcovr { #define ACPI_2_0_TCPA_SIGNATURE ASCII32('T','C','P','A') #define ACPI_2_0_HPET_SIGNATURE ASCII32('H','P','E','T') +/* + * Table revision numbers. + */ +#define ACPI_2_0_RSDP_REVISION 0x02 +#define ACPI_2_0_FADT_REVISION 0x04 +#define ACPI_2_0_MADT_REVISION 0x02 +#define ACPI_2_0_RSDT_REVISION 0x01 +#define ACPI_2_0_XSDT_REVISION 0x01 +#define ACPI_2_0_TCPA_REVISION 0x02 +#define ACPI_2_0_HPET_REVISION 0x01 + #pragma pack () #define ACPI_PHYSICAL_ADDRESS 0xEA000 diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/build.c --- a/tools/firmware/hvmloader/acpi/build.c Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/build.c Sat Dec 30 15:45:13 2006 +0000 @@ -57,8 +57,8 @@ int construct_madt(struct acpi_20_madt * memset(madt, 0, sizeof(*madt)); madt->header.signature = ACPI_2_0_MADT_SIGNATURE; madt->header.revision = ACPI_2_0_MADT_REVISION; - strncpy(madt->header.oem_id, "INTEL ", 6); - madt->header.oem_table_id = ACPI_OEM_TABLE_ID; + strncpy(madt->header.oem_id, ACPI_OEM_ID, 6); + strncpy(madt->header.oem_table_id, ACPI_OEM_TABLE_ID, 8); madt->header.oem_revision = ACPI_OEM_REVISION; madt->header.creator_id = ACPI_CREATOR_ID; madt->header.creator_revision = ACPI_CREATOR_REVISION; @@ -129,8 +129,8 @@ int construct_hpet(struct acpi_20_hpet * memset(hpet, 0, sizeof(*hpet)); hpet->header.signature = ACPI_2_0_HPET_SIGNATURE; hpet->header.revision = ACPI_2_0_HPET_REVISION; - strncpy(hpet->header.oem_id, "INTEL ", 6); - hpet->header.oem_table_id = ACPI_OEM_TABLE_ID; + strncpy(hpet->header.oem_id, ACPI_OEM_ID, 6); + strncpy(hpet->header.oem_table_id, ACPI_OEM_TABLE_ID, 8); hpet->header.oem_revision = ACPI_OEM_REVISION; hpet->header.creator_id = ACPI_CREATOR_ID; hpet->header.creator_revision = ACPI_CREATOR_REVISION; @@ -184,12 +184,11 @@ int construct_secondary_tables(uint8_t * tcpa->header.signature = ACPI_2_0_TCPA_SIGNATURE; tcpa->header.length = sizeof(*tcpa); tcpa->header.revision = ACPI_2_0_TCPA_REVISION; - strncpy(tcpa->header.oem_id, "IBM ", 6); - tcpa->header.oem_table_id = ASCII64(' ', ' ', ' ', ' ', - ' ', 'x', 'e', 'n'); - tcpa->header.oem_revision = 1; - tcpa->header.creator_id = ASCII32('I', 'B', 'M', ' '); - tcpa->header.creator_revision = 1; + strncpy(tcpa->header.oem_id, ACPI_OEM_ID, 6); + strncpy(tcpa->header.oem_table_id, ACPI_OEM_TABLE_ID, 8); + tcpa->header.oem_revision = ACPI_OEM_REVISION; + tcpa->header.creator_id = ACPI_CREATOR_ID; + tcpa->header.creator_revision = ACPI_CREATOR_REVISION; tcpa->lasa = e820_malloc( ACPI_2_0_TCPA_LAML_SIZE, E820_RESERVED, (uint32_t)~0); if ( tcpa->lasa ) diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/dsdt.asl --- a/tools/firmware/hvmloader/acpi/dsdt.asl Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/dsdt.asl Sat Dec 30 15:45:13 2006 +0000 @@ -17,7 +17,7 @@ * Place - Suite 330, Boston, MA 02111-1307 USA. */ -DefinitionBlock ("DSDT.aml", "DSDT", 1, "INTEL","int-xen", 2006) +DefinitionBlock ("DSDT.aml", "DSDT", 2, "Xen", "HVM", 0) { Name (\PMBS, 0x0C00) Name (\PMLN, 0x08) diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/dsdt.c --- a/tools/firmware/hvmloader/acpi/dsdt.c Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/dsdt.c Sat Dec 30 15:45:13 2006 +0000 @@ -1,22 +1,22 @@ /* * * Intel ACPI Component Architecture - * ASL Optimizing Compiler / AML Disassembler version 20050513 [Aug 11 2006] - * Copyright (C) 2000 - 2005 Intel Corporation - * Supports ACPI Specification Revision 3.0 + * ASL Optimizing Compiler version 20060707 [Dec 30 2006] + * Copyright (C) 2000 - 2006 Intel Corporation + * Supports ACPI Specification Revision 3.0a * - * Compilation of "dsdt.asl" - Thu Dec 21 10:37:33 2006 + * Compilation of "dsdt.asl" - Sat Dec 30 15:31:23 2006 * * C source code output * */ -unsigned char AmlCode[] = +unsigned char AmlCode[] = { 0x44,0x53,0x44,0x54,0xD9,0x0D,0x00,0x00, /* 00000000 "DSDT...." */ - 0x01,0xED,0x49,0x4E,0x54,0x45,0x4C,0x00, /* 00000008 "..INTEL." */ - 0x69,0x6E,0x74,0x2D,0x78,0x65,0x6E,0x00, /* 00000010 "int-xen." */ - 0xD6,0x07,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */ - 0x13,0x05,0x05,0x20,0x08,0x50,0x4D,0x42, /* 00000020 "... .PMB" */ + 0x02,0xFB,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 "..Xen..." */ + 0x48,0x56,0x4D,0x00,0x00,0x00,0x00,0x00, /* 00000010 "HVM....." */ + 0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */ + 0x07,0x07,0x06,0x20,0x08,0x50,0x4D,0x42, /* 00000020 "... .PMB" */ 0x53,0x0B,0x00,0x0C,0x08,0x50,0x4D,0x4C, /* 00000028 "S....PML" */ 0x4E,0x0A,0x08,0x08,0x49,0x4F,0x42,0x31, /* 00000030 "N...IOB1" */ 0x00,0x08,0x49,0x4F,0x4C,0x31,0x00,0x08, /* 00000038 "..IOL1.." */ diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/ssdt_tpm.asl --- a/tools/firmware/hvmloader/acpi/ssdt_tpm.asl Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/ssdt_tpm.asl Sat Dec 30 15:45:13 2006 +0000 @@ -17,7 +17,7 @@ //* SSDT for TPM TIS Interface for Xen with Qemu device model -DefinitionBlock ("SSDT_TPM.aml", "SSDT", 1, "IBM","xen", 2006) +DefinitionBlock ("SSDT_TPM.aml", "SSDT", 2, "Xen", "HVM", 0) { Device (TPM) { Name (_HID, EisaId ("PNP0C31")) @@ -26,4 +26,4 @@ DefinitionBlock ("SSDT_TPM.aml", "SSDT", Memory32Fixed (ReadWrite, 0xFED40000, 0x5000,) }) } -} \ No newline at end of file +} diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/ssdt_tpm.h --- a/tools/firmware/hvmloader/acpi/ssdt_tpm.h Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/ssdt_tpm.h Sat Dec 30 15:45:13 2006 +0000 @@ -1,11 +1,11 @@ /* * * Intel ACPI Component Architecture - * ASL Optimizing Compiler version 20060707 [Sep 11 2006] + * ASL Optimizing Compiler version 20060707 [Dec 30 2006] * Copyright (C) 2000 - 2006 Intel Corporation * Supports ACPI Specification Revision 3.0a * - * Compilation of "acpi_ssdt_tpm.asl" - Mon Oct 30 11:28:27 2006 + * Compilation of "ssdt_tpm.asl" - Sat Dec 30 15:31:27 2006 * * C source code output * @@ -13,9 +13,9 @@ unsigned char AmlCode_TPM[] = unsigned char AmlCode_TPM[] = { 0x53,0x53,0x44,0x54,0x4C,0x00,0x00,0x00, /* 00000000 "SSDTL..." */ - 0x01,0x6D,0x49,0x42,0x4D,0x00,0x00,0x00, /* 00000008 ".mIBM..." */ - 0x78,0x65,0x6E,0x00,0x00,0x00,0x00,0x00, /* 00000010 "xen....." */ - 0xD6,0x07,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */ + 0x02,0x56,0x58,0x65,0x6E,0x00,0x00,0x00, /* 00000008 ".VXen..." */ + 0x48,0x56,0x4D,0x00,0x00,0x00,0x00,0x00, /* 00000010 "HVM....." */ + 0x00,0x00,0x00,0x00,0x49,0x4E,0x54,0x4C, /* 00000018 "....INTL" */ 0x07,0x07,0x06,0x20,0x5B,0x82,0x26,0x54, /* 00000020 "... [.&T" */ 0x50,0x4D,0x5F,0x08,0x5F,0x48,0x49,0x44, /* 00000028 "PM_._HID" */ 0x0C,0x41,0xD0,0x0C,0x31,0x08,0x5F,0x43, /* 00000030 ".A..1._C" */ diff -r a578c9703416 -r 63fb88610e1e tools/firmware/hvmloader/acpi/static_tables.c --- a/tools/firmware/hvmloader/acpi/static_tables.c Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/hvmloader/acpi/static_tables.c Sat Dec 30 15:45:13 2006 +0000 @@ -118,7 +118,7 @@ struct acpi_20_xsdt Xsdt = { .signature = ACPI_2_0_XSDT_SIGNATURE, .length = sizeof(struct acpi_header), .revision = ACPI_2_0_XSDT_REVISION, - .oem_id = ACPI_OEM_ID, + .oem_id = ACPI_OEM_ID, .oem_table_id = ACPI_OEM_TABLE_ID, .oem_revision = ACPI_OEM_REVISION, .creator_id = ACPI_CREATOR_ID, @@ -130,7 +130,7 @@ struct acpi_20_rsdp Rsdp = { struct acpi_20_rsdp Rsdp = { .signature = ACPI_2_0_RSDP_SIGNATURE, .oem_id = ACPI_OEM_ID, - .revision = ACPI_OEM_REVISION, + .revision = ACPI_2_0_RSDP_REVISION, .length = sizeof(struct acpi_20_rsdp) }; diff -r a578c9703416 -r 63fb88610e1e tools/firmware/vmxassist/vm86.c --- a/tools/firmware/vmxassist/vm86.c Sat Dec 30 12:49:31 2006 +0000 +++ b/tools/firmware/vmxassist/vm86.c Sat Dec 30 15:45:13 2006 +0000 @@ -961,9 +961,9 @@ protected_mode(struct regs *regs) /* initialize jump environment to warp back to protected mode */ regs->uss = DATA_SELECTOR; - regs->uesp = stack_top; + regs->uesp = (unsigned long)stack_top; regs->cs = CODE_SELECTOR; - regs->eip = (unsigned) switch_to_protected_mode; + regs->eip = (unsigned long)switch_to_protected_mode; /* this should get us into 32-bit mode */ } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |