qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/3] target/arm: Support EL1 AArch32 guest under AArch64 EL2
@ 2017-01-10 18:44 Peter Maydell
  2017-01-10 18:44 ` [Qemu-devel] [PATCH 1/3] target/arm: A32, T32: Create Instruction Syndromes for Data Aborts Peter Maydell
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Peter Maydell @ 2017-01-10 18:44 UTC (permalink / raw)
  To: qemu-arm, qemu-devel; +Cc: patches, Edgar E. Iglesias

The GICv3 virt patchset is sufficient to run a 64-bit guest under
a 64-bit host kernel. To run 32-bit guests under the 64-bit host
you need a few more things:
 * data aborts from AArch32 need to provide instruction syndrome info
   to the hypervisor
 * the AArch32 interrupt code needs to handle VIRQ and VFIQ
 * we need a DBGVCR32_EL2 register, because Linux's EL2 code uses
   it to context-switch AArch32 DBGVCR between guests

This patchset sits on top of the gicv3-virt patchset and is
sufficient to run a Linux 32-bit guest under 64-bit Linux host.

Git branch with the whole lot:
 https://git.linaro.org/people/peter.maydell/qemu-arm.git aarch32-guest


Peter Maydell (3):
  target/arm: A32, T32: Create Instruction Syndromes for Data Aborts
  target/arm: Handle VIRQ and VFIQ in arm_cpu_do_interrupt_aarch32()
  target/arm: Implement DBGVCR32_EL2 system register

 target/arm/helper.c    |  21 +++++
 target/arm/translate.c | 213 ++++++++++++++++++++++++++++++++++++-------------
 2 files changed, 178 insertions(+), 56 deletions(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2017-01-12 21:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-10 18:44 [Qemu-devel] [PATCH 0/3] target/arm: Support EL1 AArch32 guest under AArch64 EL2 Peter Maydell
2017-01-10 18:44 ` [Qemu-devel] [PATCH 1/3] target/arm: A32, T32: Create Instruction Syndromes for Data Aborts Peter Maydell
2017-01-12 20:41   ` Edgar E. Iglesias
2017-01-12 21:50     ` Peter Maydell
2017-01-10 18:44 ` [Qemu-devel] [PATCH 2/3] target/arm: Handle VIRQ and VFIQ in arm_cpu_do_interrupt_aarch32() Peter Maydell
2017-01-12 21:41   ` Edgar E. Iglesias
2017-01-10 18:44 ` [Qemu-devel] [PATCH 3/3] target/arm: Implement DBGVCR32_EL2 system register Peter Maydell
2017-01-12 20:46   ` Edgar E. Iglesias
2017-01-12 20:46 ` [Qemu-devel] [PATCH 0/3] target/arm: Support EL1 AArch32 guest under AArch64 EL2 Edgar E. Iglesias

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).