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

Re: [Xen-devel] [PATCH v5 6/8] arm/gic-v3: Refactor gicv3_init into generic and dt specific parts





On 2016/1/27 20:18, Stefano Stabellini wrote:
On Sat, 23 Jan 2016, Shannon Zhao wrote:
>From: Shannon Zhao<shannon.zhao@xxxxxxxxxx>
>
>Refactor gic-v3 related functions into dt and generic parts. This will be
>helpful when adding acpi support for gic-v3.
>
>Signed-off-by: Shannon Zhao<shannon.zhao@xxxxxxxxxx>
>---
>v5: none
>v4: Use INVALID_PADDR and move ioremap to common init function
>---
>  xen/arch/arm/gic-v3.c | 114 
+++++++++++++++++++++++++++-----------------------
>  1 file changed, 61 insertions(+), 53 deletions(-)
>
>diff --git a/xen/arch/arm/gic-v3.c b/xen/arch/arm/gic-v3.c
>index a245b56..65a4de6 100644
>--- a/xen/arch/arm/gic-v3.c
>+++ b/xen/arch/arm/gic-v3.c
>@@ -1138,41 +1138,14 @@ static int __init cmp_rdist(const void *a, const void 
*b)
>      return ( l->base < r->base) ? -1 : 0;
>  }
>
>+static paddr_t __initdata dbase = INVALID_PADDR, vbase = INVALID_PADDR;
>+static paddr_t __initdata cbase = INVALID_PADDR, csize = INVALID_PADDR;
>+
>  /* If the GICv3 supports GICv2, initialize it */
>-static void __init gicv3_init_v2(const struct dt_device_node *node,
>-                                 paddr_t dbase)
>+static void __init gicv3_init_v2(void)
>  {
>-    int res;
>-    paddr_t cbase, csize;
>-    paddr_t vbase, vsize;
>-
>-    /*
>-     * For GICv3 supporting GICv2, GICC and GICV base address will be
>-     * provided.
>-     */
>-    res = dt_device_get_address(node, 1 + gicv3.rdist_count,
>-                                &cbase, &csize);
>-    if ( res )
>-        return;
>-
>-    res = dt_device_get_address(node, 1 + gicv3.rdist_count + 2,
>-                                &vbase, &vsize);
>-    if ( res )
>-        return;
>-
>-    /*
>-     * We emulate a vGICv2 using a GIC CPU interface of GUEST_GICC_SIZE.
>-     * So only support GICv2 on GICv3 when the virtual CPU interface is
>-     * at least GUEST_GICC_SIZE.
>-     */
>-    if ( vsize < GUEST_GICC_SIZE )
>-    {
>-        printk(XENLOG_WARNING
>-               "GICv3: WARNING: Not enabling support for GICv2 compat mode.\n"
>-               "Size of GICV (%#"PRIpaddr") must at least be %#llx.\n",
>-               vsize, GUEST_GICC_SIZE);
The vsize < GUEST_GICC_SIZE check needs to remain here because ...

Ah, sorry, didn't notice this. Will fix this. To reduce email traffic load I plan to update and send this patch only and hope we could apply the last five patches of this series firstly. I'll respin the first three patches and send them as an individual series. Is this fine?

Thanks,
--
Shannon

_______________________________________________
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®.