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

Re: [Xen-devel] [PATCH v9 4/7] xen/arm: Add virtual GICv3 support



Hi Stefano,

On 04/09/14 17:49, Stefano Stabellini wrote:
On Thu, 4 Sep 2014, vijay.kilari@xxxxxxxxx wrote:
From: Vijaya Kumar K <Vijaya.Kumar@xxxxxxxxxxxxxxxxxx>

Add virtual GICv3 driver support.
Also, with this patch vgic_irq_rank structure is modified to
hold GICv2 GICD_TARGET and GICv3 GICD_ROUTER registers under
union.

This patch adds only basic GICv3 support.
Does not support Interrupt Translation support (ITS)

Signed-off-by: Vijaya Kumar K <Vijaya.Kumar@xxxxxxxxxxxxxxxxxx>
---
v9: - Use 128K mask to compute GICR register offset if stride
       is not set
     - Fix alignment errors in vgic-v2.c
     - Updated vgic_{lock,unlock}_rank
v8: - Fixed printk coding styles
     - Moved GICD_PIDRn and GICR_PIDRn macros to vgic-v3.c
       from header file
     - Check is made on return value of vgic_v3_init()
v7: Fixed coding style.
v6: Removed byte read access for IROUTERN register.
diff --git a/xen/arch/arm/vgic.c b/xen/arch/arm/vgic.c
index 129b1b5..cf3834e 100644
--- a/xen/arch/arm/vgic.c
+++ b/xen/arch/arm/vgic.c
@@ -69,6 +69,12 @@ int domain_vgic_init(struct domain *d)

      switch ( gic_hw_version() )
      {
+#ifdef CONFIG_ARM_64
+    case GIC_V3:
+        if ( vgic_v3_init(d) )
+           return -ENODEV;
+        break;
+#endif

Why the #ifdef?

AFAIK, GICv3 is only supported on ARMv8 platform. Hence it's only compiled for this platform.

The #ifdef looks good to me.

Regards,

--
Julien Grall

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


 


Rackspace

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