[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 00/13] microvm: add acpi support
From: |
Gerd Hoffmann |
Subject: |
[PATCH v2 00/13] microvm: add acpi support |
Date: |
Tue, 5 May 2020 15:42:52 +0200 |
I know that not supporting ACPI in microvm is intentional. If you still
don't want ACPI this is perfectly fine, you can use the usual -no-acpi
switch to toggle ACPI support.
These are the advantages you are going to loose then:
(1) virtio-mmio device discovery without command line hacks (tweaking
the command line is a problem when not using direct kernel boot).
(2) Better IO-APIC support, we can use IRQ lines 16-23.
(3) ACPI power button (aka powerdown request) works.
(4) machine poweroff (aka S5 state) works.
Together with seabios patches for virtio-mmio support this allows to
boot standard fedora images (cloud, coreos, workstation live) with the
microvm machine type.
git branch for testing (including updated seabios):
https://git.kraxel.org/cgit/qemu/log/?h=sirius/microvm
changes in v2:
* some acpi cleanups are an separate patch series now.
* switched to hw reduced acpi & generic event device.
* misc fixes here and there.
cheers,
Gerd
Gerd Hoffmann (13):
acpi: make build_madt() more generic.
acpi: create acpi-common.c and move madt code
acpi: madt: skip pci override on pci-less systems (microvm)
acpi: move acpi_build_facs to acpi-common.c
acpi: move acpi_init_common_fadt_data to acpi-common.c
acpi: move acpi_align_size to acpi-common.h
acpi: fadt: add hw-reduced sleep register support
acpi: generic event device for x86
microvm: add minimal acpi support
microvm: disable virtio-mmio cmdline hack
microvm: add acpi_dsdt_add_virtio() for x86
microvm: make virtio irq base runtime configurable
microvm/acpi: use GSI 16-23 for virtio
hw/i386/acpi-common.h | 38 ++++
hw/i386/acpi-microvm.h | 6 +
include/hw/acpi/acpi-defs.h | 2 +
include/hw/acpi/generic_event_device.h | 10 +
include/hw/i386/microvm.h | 10 +-
hw/acpi/aml-build.c | 4 +-
hw/i386/acpi-build.c | 198 +-------------------
hw/i386/acpi-common.c | 206 ++++++++++++++++++++
hw/i386/acpi-microvm.c | 249 +++++++++++++++++++++++++
hw/i386/generic_event_device_x86.c | 114 +++++++++++
hw/i386/microvm.c | 36 +++-
hw/i386/Kconfig | 1 +
hw/i386/Makefile.objs | 3 +
13 files changed, 676 insertions(+), 201 deletions(-)
create mode 100644 hw/i386/acpi-common.h
create mode 100644 hw/i386/acpi-microvm.h
create mode 100644 hw/i386/acpi-common.c
create mode 100644 hw/i386/acpi-microvm.c
create mode 100644 hw/i386/generic_event_device_x86.c
--
2.18.4
- [PATCH v2 00/13] microvm: add acpi support,
Gerd Hoffmann <=
- [PATCH v2 01/13] acpi: make build_madt() more generic., Gerd Hoffmann, 2020/05/05
- [PATCH v2 06/13] acpi: move acpi_align_size to acpi-common.h, Gerd Hoffmann, 2020/05/05
- [PATCH v2 02/13] acpi: create acpi-common.c and move madt code, Gerd Hoffmann, 2020/05/05
- [PATCH v2 07/13] acpi: fadt: add hw-reduced sleep register support, Gerd Hoffmann, 2020/05/05
- [PATCH v2 09/13] microvm: add minimal acpi support, Gerd Hoffmann, 2020/05/05