[XEN v3 00/12] Arm: Enable GICv3 for AArch32

Ayan Kumar Halder posted 12 patches 1 year, 4 months ago
Test gitlab-ci failed
Patches applied successfully (tree, apply log)
git fetch https://gitlab.com/xen-project/patchew/xen tags/patchew/20221111141739.2872-1-ayan.kumar.halder@amd.com
There is a newer version of this series
SUPPORT.md                               |   7 +
xen/arch/arm/Kconfig                     |   5 +-
xen/arch/arm/gic-v3.c                    | 159 +++++++++++++----------
xen/arch/arm/include/asm/arm32/io.h      |   9 ++
xen/arch/arm/include/asm/arm32/sysregs.h |  19 +++
xen/arch/arm/include/asm/arm64/sysregs.h |   4 +
xen/arch/arm/include/asm/cpregs.h        | 135 +++++++++++++++++++
xen/arch/arm/include/asm/cpufeature.h    |   1 +
xen/arch/arm/include/asm/gic_v3_defs.h   |  24 ++--
xen/arch/arm/include/asm/vreg.h          |  86 +++---------
xen/arch/arm/vgic-v3.c                   |  18 ++-
11 files changed, 312 insertions(+), 155 deletions(-)
[XEN v3 00/12] Arm: Enable GICv3 for AArch32
Posted by Ayan Kumar Halder 1 year, 4 months ago
Hi All,

Please find the following patches to enable GICv3 for AArch32.
This is a pre-requisite to support Xen on Cortex-R52 (AArch32-v8R system)

Let me know your thoughts.

The following patches have been reviewed and acked and contain no changes
from v2 :-
1. [XEN v3 05/12] xen/Arm: GICv3: Fix GICR_{PENDBASER, PROPBASER} emulation on 32-bit host
2. [XEN v3 06/12] xen/Arm: vGICv3: Fix emulation of ICC_SGI1R on AArch32

Changes from -

v1 :-
1. Updated in the changelog for each of the patches.

v2 :-
1. Dropped "xen/Arm: GICv3: Move the macros to compute the affnity level to
arm64/arm32". The reason being aff3 does not exist on arm32. And aff0..2 is
the same between arm32, AArch32 and AArch64.

2. Introduce a new patch "xen/Arm: GICv3: Adapt access to VMPIDR register for
AArch32".

3. For the new registers introduced, we have defined the arm32 name and then
an alias.

4. Use 'AArch32' across all the patches.

5. Dropped the 'R-b' and 'Ack' in "[XEN v3 08/12] xen/Arm: GICv3: Define
ICH_AP0R<n> and ICH_AP1R<n> for AArch32".


Ayan Kumar Halder (12):
  xen/Arm: vGICv3: Sysreg emulation is applicable for AArch64 only
  xen/Arm: GICv3: Adapt access to VMPIDR register for AArch32
  xen/Arm: vreg: Support vreg_reg64_* helpers on AArch32
  xen/Arm: vGICv3: Adapt emulation of GICR_TYPER for AArch32
  xen/Arm: GICv3: Fix GICR_{PENDBASER, PROPBASER} emulation on 32-bit
    host
  xen/Arm: vGICv3: Fix emulation of ICC_SGI1R on AArch32
  xen/Arm: GICv3: Define ICH_LR<n>_EL2 on AArch32
  xen/Arm: GICv3: Define ICH_AP0R<n> and ICH_AP1R<n> for AArch32
  xen/Arm: GICv3: Define remaining GIC registers for AArch32
  xen/Arm: GICv3: Use ULL instead of UL for 64bits
  xen/Arm: GICv3: Define macros to read/write 64 bit
  xen/Arm: GICv3: Enable GICv3 for AArch32

 SUPPORT.md                               |   7 +
 xen/arch/arm/Kconfig                     |   5 +-
 xen/arch/arm/gic-v3.c                    | 159 +++++++++++++----------
 xen/arch/arm/include/asm/arm32/io.h      |   9 ++
 xen/arch/arm/include/asm/arm32/sysregs.h |  19 +++
 xen/arch/arm/include/asm/arm64/sysregs.h |   4 +
 xen/arch/arm/include/asm/cpregs.h        | 135 +++++++++++++++++++
 xen/arch/arm/include/asm/cpufeature.h    |   1 +
 xen/arch/arm/include/asm/gic_v3_defs.h   |  24 ++--
 xen/arch/arm/include/asm/vreg.h          |  86 +++---------
 xen/arch/arm/vgic-v3.c                   |  18 ++-
 11 files changed, 312 insertions(+), 155 deletions(-)

-- 
2.17.1