Hi, The patch grow to three parts now. Although it is still add a QEmu support for Microsoft's Virtual Machine Generation ID device.
The first is a short device's description, then the ACPI tables changes and the actual device and the last patch updates the tests' ACPI tables. Your comment are welcomed. Thanks, Gal. V8 - Add a device's description file. - GUID is stored in fw cfg file and the guest writes the physical address to the device (reduces vmexits). V7 - Move the device's description back to the static SSDT table. - The GUID is store in a "hard coded" physical address and not in the ACPI table itself. - ACPI notification is triggered when the GUID is changed. V6 - include the pre-compiled ASL file - remove an empty line at end of files. V5 - Move device's description to SSDT table (dynamic). V4 - Fix a typo in error message string. - Move device's description from DSDT back to SSDT table. V3 - Remove "-uuid" command line parameter. - Move device's description from SSDT to DSDT table. - Add new "vmgenid" sysbus device. Gal Hammer (3): docs: vm generation id device's description i386: Add a Virtual Machine Generation ID device tests: update acpi tables after adding the vmgenid device default-configs/i386-softmmu.mak | 1 + default-configs/x86_64-softmmu.mak | 1 + docs/specs/vmgenid.txt | 27 ++++++++ hw/acpi/core.c | 8 +++ hw/acpi/ich9.c | 8 +++ hw/acpi/piix4.c | 8 +++ hw/i386/acpi-build.c | 26 +++++++ hw/i386/acpi-dsdt.dsl | 4 +- hw/i386/acpi-dsdt.hex.generated | 6 +- hw/i386/pc.c | 8 +++ hw/i386/q35-acpi-dsdt.dsl | 5 +- hw/i386/q35-acpi-dsdt.hex.generated | 8 +-- hw/i386/ssdt-misc.dsl | 43 ++++++++++++ hw/i386/ssdt-misc.hex.generated | 8 +-- hw/isa/lpc_ich9.c | 1 + hw/misc/Makefile.objs | 1 + hw/misc/vmgenid.c | 131 +++++++++++++++++++++++++++++++++++ include/hw/acpi/acpi.h | 2 + include/hw/acpi/acpi_dev_interface.h | 4 ++ include/hw/acpi/ich9.h | 2 + include/hw/i386/pc.h | 3 + include/hw/misc/vmgenid.h | 21 ++++++ tests/acpi-test-data/pc/DSDT | Bin 2807 -> 2820 bytes tests/acpi-test-data/pc/SSDT | Bin 3065 -> 3268 bytes tests/acpi-test-data/q35/DSDT | Bin 7397 -> 7410 bytes tests/acpi-test-data/q35/SSDT | Bin 1346 -> 1549 bytes 26 files changed, 313 insertions(+), 13 deletions(-) create mode 100644 docs/specs/vmgenid.txt create mode 100644 hw/misc/vmgenid.c create mode 100644 include/hw/misc/vmgenid.h -- 1.9.3