From: "Mian M. Hamayun" <m.hamayun@virtualopensystems.com>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, tech@virtualopensystems.com,
kvmarm@lists.cs.columbia.edu
Subject: [Qemu-devel] [PATCH v2 0/7] AARCH64 support on machvirt machine model using KVM
Date: Tue, 23 Jul 2013 11:33:09 +0200 [thread overview]
Message-ID: <1374571996-9228-1-git-send-email-m.hamayun@virtualopensystems.com> (raw)
From: "Mian M. Hamayun" <m.hamayun@virtualopensystems.com>
This is the v2 of patch series that implements KVM support in QEMU for the ARMv8
Cortex A57 CPU. It depends on the previously submitted AArch64 preparation patch
series v5 and machvirt patches, and uses the already available KVM in-kernel GIC
support. Current implementation for 64-bit guests only, and 32-bit guest support
will be introduced in near future.
As a reference, KVM Tool and the AArch64 bootwrapper were used, as well as
public documentation from ARM. The following work has been tested with SMP
capabilities, under ARMv8 Fast and Foundation Models (Open Embedded userspace
with an emulated MMC).
The v1 of this patch series related to AArch64 CPU model for Versatile Express
was sponsored by Huawei, and developed in collaboration between Huawei
Technologies Duesseldorf GmbH - European Research Center Munich (ERC) and
Virtual Open Systems.
A working tree of this implementation is available on the "kvm-aarch64-v2"
branch of the following github repository.
https://github.com/virtualopensystems/qemu/tree/kvm-aarch64-v2
Summary of Changes:
Changes v1 -> v2
* Based on AArch64 Preparation Patchset V5 and machvirt patches.
* Implemented for Machvirt Machine Model.
* Architecture-specific CPU initialization code improved. Removed hardcoding
from register set/get loops and introduced CPU target type array to find
appropriate ARMv8 CPU type supported by KVM.
* Disable the PSCI method in case of AArch64 and use the spin-table method
instead for booting secondary CPUs.
* 32-bit guest support still missing
v1
* Based on AArch64 Preparation Patchset V4
* Implemented for Versatile Express Machine Model
* Support for SMP using bootcode injection
* No 32-bit guest support
Alexander Spyridakis (1):
AARCH64: Add SMP support for aarch64 processors
Mian M. Hamayun (6):
AARCH64: Add A57 CPU to default AArch64 configuration and enable KVM
Add the additional parent parameter to memory region init calls
AARCH64: Add aarch64 CPU initialization, get and put registers
support
AARCH64: Add boot support for aarch64 processor
AARCH64: Disable the non-aarch64 specific reset code
AARCH64: Use the spin-table method for booting secondary processors
in machvirt
configure | 2 +-
default-configs/aarch64-softmmu.mak | 3 +-
hw/arm/boot.c | 62 +++++++++++++++--
hw/arm/virt.c | 16 ++++-
hw/cpu/a57mpcore.c | 2 +-
linux-headers/linux/kvm.h | 1 +
target-arm/kvm.c | 127 +++++++++++++++++++++++++++++++++++
7 files changed, 201 insertions(+), 12 deletions(-)
--
1.7.9.5
next reply other threads:[~2013-07-23 9:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-07-23 9:33 Mian M. Hamayun [this message]
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 1/7] AARCH64: Add A57 CPU to default AArch64 configuration and enable KVM Mian M. Hamayun
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 2/7] Add the additional parent parameter to memory region init calls Mian M. Hamayun
2013-07-23 9:43 ` Andreas Färber
2013-07-23 10:00 ` Peter Maydell
2013-07-23 10:06 ` Andreas Färber
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 3/7] AARCH64: Add aarch64 CPU initialization, get and put registers support Mian M. Hamayun
2013-08-09 13:24 ` Peter Maydell
2013-08-09 19:03 ` Mian M. Hamayun
2013-08-10 9:10 ` Peter Maydell
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 4/7] AARCH64: Add boot support for aarch64 processor Mian M. Hamayun
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 5/7] AARCH64: Disable the non-aarch64 specific reset code Mian M. Hamayun
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 6/7] AARCH64: Add SMP support for aarch64 processors Mian M. Hamayun
2013-07-23 9:33 ` [Qemu-devel] [PATCH v2 7/7] AARCH64: Use the spin-table method for booting secondary processors in machvirt Mian M. Hamayun
2013-08-09 14:34 ` Peter Maydell
2013-08-09 19:04 ` Mian M. Hamayun
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=1374571996-9228-1-git-send-email-m.hamayun@virtualopensystems.com \
--to=m.hamayun@virtualopensystems.com \
--cc=kvmarm@lists.cs.columbia.edu \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=tech@virtualopensystems.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).