microvm/acpi: add minimal acpi support

$subject says all.  Can be controlled using -M microvm,acpi=on/off.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Reviewed-by: Igor Mammedov <imammedo@redhat.com>
Message-id: 20200915120909.20838-9-kraxel@redhat.com
This commit is contained in:
Gerd Hoffmann 2020-09-15 14:08:56 +02:00
parent d4e9d577be
commit 8045df14bc
6 changed files with 246 additions and 1 deletions

View file

@ -24,6 +24,7 @@
#include "hw/boards.h"
#include "hw/i386/x86.h"
#include "hw/acpi/acpi_dev_interface.h"
#include "qom/object.h"
/* Platform virtio definitions */
@ -31,6 +32,11 @@
#define VIRTIO_NUM_TRANSPORTS 8
#define VIRTIO_CMDLINE_MAXLEN 64
#define GED_MMIO_BASE 0xfea00000
#define GED_MMIO_BASE_MEMHP (GED_MMIO_BASE + 0x100)
#define GED_MMIO_BASE_REGS (GED_MMIO_BASE + 0x200)
#define GED_MMIO_IRQ 9
/* Machine type options */
#define MICROVM_MACHINE_PIT "pit"
#define MICROVM_MACHINE_PIC "pic"
@ -60,6 +66,9 @@ struct MicrovmMachineState {
/* Machine state */
uint32_t virtio_irq_base;
bool kernel_cmdline_fixed;
Notifier machine_done;
Notifier powerdown_req;
AcpiDeviceIf *acpi_dev;
};
typedef struct MicrovmMachineState MicrovmMachineState;