Il 10/08/2014 13:32, Gal Hammer ha scritto: > Based on Microsoft's sepecifications (paper can be dowloaded from > http://go.microsoft.com/fwlink/?LinkId=260709), add a device > description to the SSDT ACPI table. > > The GUID is set using a new "-vmgenid" command line parameter. > > Signed-off-by: Gal Hammer <gham...@redhat.com> > --- > hw/i386/acpi-build.c | 23 +++++++++++++++++++++++ > hw/i386/ssdt-misc.dsl | 33 +++++++++++++++++++++++++++++++++ > qemu-options.hx | 9 +++++++++ > vl.c | 11 +++++++++++ > 4 files changed, 76 insertions(+)
Please make this a new device (like pvpanic), instead of adding a new command-line option. > > + Scope(\_SB) { > + > + Device(VMGI) { > + Name(_HID, "QEMU0002") > + Name(_CID, "VM_Gen_Counter") > + Name(_DDN, "VM_Gen_Counter") > + > + ACPI_EXTRACT_NAME_DWORD_CONST ssdt_acpi_vm_gid_addr > + Name(VGIA, 0x12345678) > + > + ACPI_EXTRACT_NAME_BUFFER16 ssdt_acpi_vm_gid > + Name(VGID, Buffer(16) { > + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, > + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }) > + > + Method(_STA, 0, NotSerialized) { > + Store(VGIA, Local0) > + If (LEqual(Local0, Zero)) { > + Return (0x00) > + } Else { > + Return (0x0F) > + } > + } > + > + Method(ADDR, 0, Serialized) { > + Store(Package(2) { }, Local0) > + Store(VGIA, Index(Local0, 0)) > + Store(0x0000, Index(Local0, 1)) > + return (Local0) > + } > + } > + } > + Please either put this in the DSDT, or omit the Device altogether if you put it in the SSDT and there is no VMGID device. Thanks, Paolo