From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:35260) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YGG20-0006oK-AA for qemu-devel@nongnu.org; Tue, 27 Jan 2015 18:58:53 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YGG1w-0005Sx-2W for qemu-devel@nongnu.org; Tue, 27 Jan 2015 18:58:52 -0500 Received: from mail-pd0-f180.google.com ([209.85.192.180]:56476) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YGG1v-0005Sr-UN for qemu-devel@nongnu.org; Tue, 27 Jan 2015 18:58:48 -0500 Received: by mail-pd0-f180.google.com with SMTP id ft15so21803418pdb.11 for ; Tue, 27 Jan 2015 15:58:47 -0800 (PST) From: Greg Bellows Date: Tue, 27 Jan 2015 17:58:33 -0600 Message-Id: <1422403117-16921-1-git-send-email-greg.bellows@linaro.org> Subject: [Qemu-devel] [PATCH v3 0/4] target-arm: ARM64: Adding EL1 AARCH32 guest support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, peter.maydell@linaro.org, christoffer.dall@linaro.org, alex.bennee@linaro.org Cc: Greg Bellows Added support for running an AArch32 guest on a AArch64 KVM host. Support has only been added to the QEMU machvirt machine. The addition of CPU properties specifiable from the command line were added to allow disablement of AArch64 execution state hereby forcing EL1 to be AArch32. The new CPU command line property is "aarch64=on/off" that is specified as follows: aarch64-softmmu/qemu-system-aarch64 -M virt -cpu cortex-a57,aarch64=off ... --- v1 -> v2 - Replaced custom property parsing with use of generic CPU property parser - Added CPU property registration - Fixed mulitple property handling in virt.c - Removed unnecessary kernel load changes v2 -> v3 - Fix KVM64/AArch64 hang by conditionalizing register sync - Conditionalize 64-bit interrupt handler setting of aarch64 Greg Bellows (4): target-arm: Add CPU property to disable AArch64 target-arm: Add feature parsing to virt target-arm: Add 32/64-bit register sync target-arm: Add AArch32 guest support to KVM64 hw/arm/virt.c | 20 +++++++++-- target-arm/cpu.c | 6 +++- target-arm/cpu64.c | 29 ++++++++++++++++ target-arm/helper-a64.c | 9 +++-- target-arm/internals.h | 89 +++++++++++++++++++++++++++++++++++++++++++++++++ target-arm/kvm64.c | 33 +++++++++++++++--- target-arm/op_helper.c | 6 ++-- 7 files changed, 175 insertions(+), 17 deletions(-) -- 1.8.3.2