[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 00/11] Generate ACPI v5.1 tables and expose it t
From: |
Shannon Zhao |
Subject: |
[Qemu-devel] [RFC PATCH 00/11] Generate ACPI v5.1 tables and expose it to guest over fw_cfg on ARM |
Date: |
Sat, 24 Jan 2015 17:21:09 +0800 |
This patch series generate seven ACPI v5.1 tables for machine virt on ARM.
The set of generated tables are:
- RSDP
- XSDT
- MADT
- GTDT
- FADT
- FACS
- DSDT
These tables are created dynamically using the function of acpi-build-utils.c,
taking into account the needed information passed from the virt machine model.
When the generation is finalized, it use fw_cfg to expose the tables to guest.
This patchset is based on Igor Mammedov's branch which can be found at below
git tree:
https://github.com/imammedo/qemu/commits/ASL_API_v2
And this patchset refers to Alexander Spyridakis's patches which are sent to
qemu-devel mailing list before.
http://lists.gnu.org/archive/html/qemu-devel/2014-10/msg03987.html
As UEFI (ArmVirtualizationQemu) doesn't support downloading ACPI tables over
fw_cfg, I just do compile test and start a guest with UEFI. But I contacted
Laszlo Ersek before, he says that if qemu can expose the generated ACPI
tables over fw_cfg, he can quickly add support in UEFI. So just send this
out and make it go forward.
Todo:
1) add GPIO controller in virt and expose it through ACPI
2) add cpu hotplug support
Any comments are welcome.
Thanks,
Shannon
Shannon Zhao (11):
hw/i386: Move ACPI header definitions in an arch-independent location
hw/arm/virt-acpi-build: Basic framwork for building ACPI tables
hw/arm/virt-acpi-build: Generate RSDP table
hw/arm/virt-acpi-build: Generate XSDT table and add a build_header
function
hw/arm/virt-acpi-build: Generate MADT table
hw/arm/virt-acpi-build: Generate GTDT table
hw/arm/virt-acpi-build: Generate FADT table and update ACPI headers
hw/arm/virt-acpi-build: Generate FACS table and update ACPI headers
hw/acpi/acpi-build-utils: Add acpi_fixed_memory32() and
acpi_extended_irq()
hw/arm/virt-acpi-build: Generation of DSDT table for virt devices
hw/arm/virt: Enable dynamic generation of ACPI v5.1 tables
default-configs/arm-softmmu.mak | 1 +
default-configs/i386-softmmu.mak | 3 +
default-configs/mips-softmmu.mak | 3 +
default-configs/mips64-softmmu.mak | 3 +
default-configs/mips64el-softmmu.mak | 3 +
default-configs/mipsel-softmmu.mak | 3 +
default-configs/x86_64-softmmu.mak | 3 +
hw/acpi/Makefile.objs | 5 +-
hw/acpi/acpi-build-utils.c | 42 +++
hw/arm/Makefile.objs | 1 +
hw/arm/virt-acpi-build.c | 520 ++++++++++++++++++++++++++++++++++
hw/arm/virt.c | 59 ++++-
hw/i2c/Makefile.objs | 2 +-
hw/i386/acpi-build.c | 2 +-
hw/i386/acpi-defs.h | 368 ------------------------
include/hw/acpi/acpi-build-utils.h | 2 +
include/hw/acpi/acpi-defs.h | 503 ++++++++++++++++++++++++++++++++
include/hw/arm/virt-acpi-build.h | 71 +++++
tests/bios-tables-test.c | 2 +-
19 files changed, 1219 insertions(+), 377 deletions(-)
create mode 100644 hw/arm/virt-acpi-build.c
delete mode 100644 hw/i386/acpi-defs.h
create mode 100644 include/hw/acpi/acpi-defs.h
create mode 100644 include/hw/arm/virt-acpi-build.h
- [Qemu-devel] [RFC PATCH 00/11] Generate ACPI v5.1 tables and expose it to guest over fw_cfg on ARM,
Shannon Zhao <=