[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Add a trivial namespace to the fake ACPI DSDT.
# HG changeset patch # User djm@xxxxxxxxxxxxxxx # Node ID 750b19fec82079b869fa4b4fa10771836dca933c # Parent 90b9e8569dfb34154a7259d9199992270b5808a7 Add a trivial namespace to the fake ACPI DSDT. This simply defines the root scope and adds a processor object. This eliminates the last guest ACPI CA warning and you should now have /proc/acpi/processor/CPU0 on the guest. Patch versus current xen-ia64-unstable.hg Signed-off-by: Alex Williamson <alex.williamson@xxxxxx> diff -r 90b9e8569dfb -r 750b19fec820 xen/arch/ia64/xen/dom_fw.c --- a/xen/arch/ia64/xen/dom_fw.c Tue Nov 22 18:19:11 2005 +++ b/xen/arch/ia64/xen/dom_fw.c Tue Nov 22 22:10:27 2005 @@ -481,6 +481,7 @@ struct fadt_descriptor_rev2 fadt; struct facs_descriptor_rev2 facs; struct acpi_table_header dsdt; + u8 aml[16]; struct acpi_table_madt madt; struct acpi_table_lsapic lsapic; u8 pm1a_evt_blk[4]; @@ -564,17 +565,26 @@ ACPI_RSDP_CHECKSUM_LENGTH); rsdp->ext_checksum = generate_acpi_checksum(rsdp, rsdp->length); - /* - * setup DSDT - ACPI generates a warning because there's no AML - * in the DSDT. Revisit to add dummy AML stub. - */ + /* setup DSDT with trivial namespace. */ strncpy(dsdt->signature, DSDT_SIG, 4); dsdt->revision = 1; - dsdt->length = sizeof(struct acpi_table_header); + dsdt->length = sizeof(struct acpi_table_header) + sizeof(tables->aml); strcpy(dsdt->oem_id, "XEN"); strcpy(dsdt->oem_table_id, "Xen/ia64"); strcpy(dsdt->asl_compiler_id, "XEN"); dsdt->asl_compiler_revision = (XEN_VERSION<<16)|(XEN_SUBVERSION); + + /* Trivial namespace, avoids ACPI CA complaints */ + tables->aml[0] = 0x10; /* Scope */ + tables->aml[1] = 0x12; /* length/offset to next object */ + strncpy(&tables->aml[2], "_SB_", 4); + + /* The processor object isn't absolutely necessary, revist for SMP */ + tables->aml[6] = 0x5b; /* processor object */ + tables->aml[7] = 0x83; + tables->aml[8] = 0x0b; /* next */ + strncpy(&tables->aml[9], "CPU0", 4); + dsdt->checksum = generate_acpi_checksum(dsdt, dsdt->length); /* setup MADT */ _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |