From: "Michael S. Tsirkin" <mst@redhat.com>
To: Shannon Zhao <zhaoshenglong@huawei.com>
Cc: peter.maydell@linaro.org, hangaohuai@huawei.com,
a.spyridakis@virtualopensystems.com, claudio.fontana@huawei.com,
qemu-devel@nongnu.org, peter.huangpeng@huawei.com,
alex.bennee@linaro.org, hanjun.guo@linaro.org,
imammedo@redhat.com, pbonzini@redhat.com, lersek@redhat.com,
christoffer.dall@linaro.org, shannon.zhao@linaro.org
Subject: Re: [Qemu-devel] [PATCH v5 00/20] Generate ACPI v5.1 tables and expose them to guest over fw_cfg on ARM
Date: Tue, 28 Apr 2015 07:20:32 +0200 [thread overview]
Message-ID: <20150428072001-mutt-send-email-mst@redhat.com> (raw)
In-Reply-To: <553EF546.7030907@huawei.com>
On Tue, Apr 28, 2015 at 10:49:42AM +0800, Shannon Zhao wrote:
> On 2015/4/15 21:24, Shannon Zhao wrote:
> > From: Shannon Zhao <shannon.zhao@linaro.org>
> >
> > This patch series generate seven ACPI tables for machine virt on ARM.
> > The set of generated tables are:
> > - RSDP
> > - RSDT
> > - MADT
> > - GTDT
> > - FADT
> > - DSDT
> > - MCFG (For PCIe host bridge)
> >
> > These tables are created dynamically using the function of aml-build.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.
> >
> > You can fetch this from following repo:
> > http://git.linaro.org/people/shannon.zhao/qemu.git ACPI_ARM_v5
> >
> > 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
> >
> > Thanks to Laszlo's work on UEFI (ArmVirtualizationQemu) supporting downloading
> > ACPI tables over fw_cfg, we now can use ACPI in VM. I have done following vm
> > startup test and attach virtio-net-pci, e1000:
> >
> > xp, windows2008, sles11 on X86
> > Fedora Linux kernel on ARM64
> >
> > Note:
> > As upstream kernel doesn't support ACPI PCI host bridge on ARM64, so I use the
> > Fedora Linux kernel from following address:
> > https://git.fedorahosted.org/cgit/kernel-arm64.git/log/?h=devel
> >
> > changes since v4:
> > * use trace_* instead of DPRINTF (Igor & Alex)
> > * use standard QEMU style for structs (Michael)
> > * add "-no-acpi" option support for arm
> > * use extractNN for bits operation (Alex)
> > * use AmlReadAndWrite enum for rw flags (Igor)
> > * s/uint64_t/uint32_t/ (Igor)
> > * use enum for interrupt flag (Igor)
> > * simplify aml_device use in DSDT (Alex)
> > * share RSDT table generating code with x86 (Igor)
> > * remove unnecessary 1 in MCFG table generating code (Alex & Peter)
> > * use string for ToUUID macro (Igor)
> > * aml_or and aml_and use two args (Igor)
> > * add comments on UUID (Michael)
> > * change PCI MMIO region non-cacheable (Peter)
> > * fix wrong io map (Peter)
> > * add several reviewed-by's from Alex, thanks
> >
> > changes since v3:
> > * rebase on upstream qemu
> > * fix _HID of CPU (Heyi Guo)
> > * Add PCIe host bridge
> >
> > changes since v2:
> > * rebase on Igor Mammedov's new branch ASL_API_v3
> > * use rsdt instead of xsdt according to Igor Mammedov's suggestion
> >
> > changes since v1:
> > * fix bug found by Laszlo
> > * move common helpers into dedictated file and change generating
> > table order according to Igor's comments
> > * fix copyright and function name according to Michael's comments
> >
> > Shannon Zhao (20):
> > hw/i386: Move ACPI header definitions in an arch-independent location
> > hw/i386/acpi-build: move generic acpi building helpers into dedictated
> > file
> > hw/arm/virt-acpi-build: Basic framework for building ACPI tables on
> > ARM
> > hw/acpi/aml-build: Add aml_memory32_fixed() term
> > hw/acpi/aml-build: Add aml_interrupt() term
> > hw/arm/virt-acpi-build: Generation of DSDT table for virt devices
> > hw/arm/virt-acpi-build: Generate FADT table and update ACPI headers
> > hw/arm/virt-acpi-build: Generate MADT table
> > hw/arm/virt-acpi-build: Generate GTDT table
> > hw/arm/virt-acpi-build: Generate RSDT table
> > hw/arm/virt-acpi-build: Generate RSDP table
> > hw/arm/virt-acpi-build: Add PCIe info and generate MCFG table
> > hw/acpi/aml-build: Add ToUUID macro
> > hw/acpi/aml-build: Add aml_or() term
> > hw/acpi/aml-build: Add aml_not() term
> > hw/acpi/aml-build: Add aml_else() term
> > hw/acpi/aml-build: Add aml_create_dword_field() term
> > hw/acpi/aml-build: Add aml_dword_io() term
> > hw/arm/virt-acpi-build: Add PCIe controller in ACPI DSDT table
> > 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/aml-build.c | 234 ++++++++++++-
> > hw/arm/Makefile.objs | 1 +
> > hw/arm/virt-acpi-build.c | 650 +++++++++++++++++++++++++++++++++++
> > hw/arm/virt.c | 78 ++++-
> > hw/i2c/Makefile.objs | 2 +-
> > hw/i386/acpi-build.c | 103 +-----
> > hw/i386/acpi-defs.h | 368 --------------------
> > include/hw/acpi/acpi-defs.h | 482 ++++++++++++++++++++++++++
> > include/hw/acpi/aml-build.h | 94 +++++
> > include/hw/arm/virt-acpi-build.h | 81 +++++
> > qemu-options.hx | 2 +-
> > tests/bios-tables-test.c | 2 +-
> > trace-events | 3 +
> > 21 files changed, 1641 insertions(+), 483 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
> >
>
> Ping?
I merged first 2 patches in my tree, plan to send pull request soon.
> --
> Thanks,
> Shannon
next prev parent reply other threads:[~2015-04-28 5:20 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-04-15 13:24 [Qemu-devel] [PATCH v5 00/20] Generate ACPI v5.1 tables and expose them to guest over fw_cfg on ARM Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 01/20] hw/i386: Move ACPI header definitions in an arch-independent location Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 02/20] hw/i386/acpi-build: move generic acpi building helpers into dedictated file Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 03/20] hw/arm/virt-acpi-build: Basic framework for building ACPI tables on ARM Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 04/20] hw/acpi/aml-build: Add aml_memory32_fixed() term Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 05/20] hw/acpi/aml-build: Add aml_interrupt() term Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 06/20] hw/arm/virt-acpi-build: Generation of DSDT table for virt devices Shannon Zhao
2015-05-04 9:58 ` Igor Mammedov
2015-05-04 11:11 ` Shannon Zhao
2015-05-04 13:04 ` Igor Mammedov
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 07/20] hw/arm/virt-acpi-build: Generate FADT table and update ACPI headers Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 08/20] hw/arm/virt-acpi-build: Generate MADT table Shannon Zhao
2015-05-04 10:21 ` Igor Mammedov
2015-05-04 11:16 ` Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 09/20] hw/arm/virt-acpi-build: Generate GTDT table Shannon Zhao
2015-04-15 13:24 ` [Qemu-devel] [PATCH v5 10/20] hw/arm/virt-acpi-build: Generate RSDT table Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 11/20] hw/arm/virt-acpi-build: Generate RSDP table Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 12/20] hw/arm/virt-acpi-build: Add PCIe info and generate MCFG table Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 13/20] hw/acpi/aml-build: Add ToUUID macro Shannon Zhao
2015-04-28 6:54 ` Igor Mammedov
2015-04-28 7:46 ` Shannon Zhao
2015-04-28 8:15 ` Igor Mammedov
2015-04-28 8:52 ` Shannon Zhao
2015-04-28 9:35 ` Igor Mammedov
2015-04-28 9:48 ` Shannon Zhao
2015-04-29 13:41 ` Shannon Zhao
2015-05-04 9:22 ` Igor Mammedov
2015-05-04 9:30 ` Shannon Zhao
2015-05-04 10:53 ` Igor Mammedov
2015-04-28 8:08 ` Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 14/20] hw/acpi/aml-build: Add aml_or() term Shannon Zhao
2015-04-28 6:56 ` Igor Mammedov
2015-04-28 7:12 ` Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 15/20] hw/acpi/aml-build: Add aml_not() term Shannon Zhao
2015-05-05 2:45 ` Shannon Zhao
2015-05-05 8:26 ` Igor Mammedov
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 16/20] hw/acpi/aml-build: Add aml_else() term Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 17/20] hw/acpi/aml-build: Add aml_create_dword_field() term Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 18/20] hw/acpi/aml-build: Add aml_dword_io() term Shannon Zhao
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 19/20] hw/arm/virt-acpi-build: Add PCIe controller in ACPI DSDT table Shannon Zhao
2015-04-28 8:42 ` Igor Mammedov
2015-04-28 8:47 ` Michael S. Tsirkin
2015-04-28 9:06 ` Shannon Zhao
2015-04-28 9:54 ` Igor Mammedov
2015-04-28 12:57 ` Shannon Zhao
2015-04-28 15:13 ` Igor Mammedov
2015-04-28 15:54 ` Michael S. Tsirkin
2015-04-29 3:12 ` Shannon Zhao
2015-04-29 8:47 ` Igor Mammedov
2015-04-29 13:37 ` Shannon Zhao
2015-04-29 13:58 ` Igor Mammedov
2015-04-15 13:25 ` [Qemu-devel] [PATCH v5 20/20] hw/arm/virt: Enable dynamic generation of ACPI v5.1 tables Shannon Zhao
2015-04-28 2:49 ` [Qemu-devel] [PATCH v5 00/20] Generate ACPI v5.1 tables and expose them to guest over fw_cfg on ARM Shannon Zhao
2015-04-28 5:20 ` Michael S. Tsirkin [this message]
2015-04-28 6:13 ` Shannon Zhao
2015-04-28 6:56 ` Michael S. Tsirkin
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20150428072001-mutt-send-email-mst@redhat.com \
--to=mst@redhat.com \
--cc=a.spyridakis@virtualopensystems.com \
--cc=alex.bennee@linaro.org \
--cc=christoffer.dall@linaro.org \
--cc=claudio.fontana@huawei.com \
--cc=hangaohuai@huawei.com \
--cc=hanjun.guo@linaro.org \
--cc=imammedo@redhat.com \
--cc=lersek@redhat.com \
--cc=pbonzini@redhat.com \
--cc=peter.huangpeng@huawei.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=shannon.zhao@linaro.org \
--cc=zhaoshenglong@huawei.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).