[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 00/13] xen/arm: Allow AArch32 guest to boot with GICv3



Hi all,

Currently, it is only possible to start AArch32 guest with GICv2. This means
that if the host interrupt controller is not compatible with GICv2, it will
not be possible to boot AArch32 guest.

The vGICv3 code is nearly fully compatible with AArch32 guest except that
co-processor access to ICC_SGI1R_EL1 is not emulated.

The first part (#1 - #11) of the series contains clean-up, only patch #12 and
#13 contains the meat.

Note this is only allowing AArch32 guest to use GICv3 on AArch64 host. This
series does not add support for GICv3 on AArch32 host.

A branch with all the patches can be found on xenbits:

git://xenbits.xen.org/people/julieng/xen-unstable.git branch gicv3-32bit-v1

Regards,

Julien Grall (13):
  xen/arm: vtimer: Switch the emulation functions return from int to
    bool
  xen/arm: vtimer: Switch the read variable in the emulation from int to
    bool
  xen/arm: traps: Switch from bool_t to bool
  xen/arm: vgic: Switch from bool_t to bool
  xen/arm: vgic: Switch vgic_to_sgi return from int to bool and progate
    up to...
  xen/arm: vgic: Switch emulate_sysreg return from int to bool
  xen/arm: vgic: Clean-up the sysreg emulation
  xen/arm: vgic-v3: Build vgic-v3.c when CONFIG_HAS_GICV3 is enabled.
  xen/arm: vtimer: Move emulate_sysreg* callback in a separate header
  xen/arm: vreg: Introduce vreg_emulate_cp{32,64}
  xen/arm: vgic: Rename emulate_sysreg callback to emulate_reg
  xen/arm: vgic-v3: Move the emulation of ICC_SGI1R_EL1 in a separate
    helper
  xen/arm: vgic-v3: Allow AArch32 guest booting with GICv3

 xen/arch/arm/Makefile            |   2 +-
 xen/arch/arm/traps.c             |  42 +++++++------
 xen/arch/arm/vgic-v2.c           |   4 +-
 xen/arch/arm/vgic-v3.c           |  64 ++++++++++++++++----
 xen/arch/arm/vgic.c              |  22 +++----
 xen/arch/arm/vtimer.c            | 126 ++++++++-------------------------------
 xen/arch/arm/vtimer.h            |   2 +-
 xen/include/asm-arm/cpregs.h     |   3 +
 xen/include/asm-arm/perfc_defn.h |   2 +
 xen/include/asm-arm/vgic.h       |  20 +++----
 xen/include/asm-arm/vreg.h       | 110 ++++++++++++++++++++++++++++++++++
 11 files changed, 240 insertions(+), 157 deletions(-)
 create mode 100644 xen/include/asm-arm/vreg.h

-- 
1.9.1


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.