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

[Xen-devel] [PATCH 03/10] xen/arm: Define quirk for Hip04 GICv2 divergence



From: Zoltan Kiss <zoltan.kiss@xxxxxxxxxx>

Signed-off-by: Zoltan Kiss <zoltan.kiss@xxxxxxxxxx>
---
 xen/arch/arm/platforms/hip04.c | 6 ++++++
 xen/include/asm-arm/platform.h | 5 +++++
 2 files changed, 11 insertions(+)

diff --git a/xen/arch/arm/platforms/hip04.c b/xen/arch/arm/platforms/hip04.c
index 62d2034..024c8a0 100644
--- a/xen/arch/arm/platforms/hip04.c
+++ b/xen/arch/arm/platforms/hip04.c
@@ -253,12 +253,18 @@ static const struct dt_device_match hip04_blacklist_dev[] 
__initconst =
     { /* sentinel */ },
 };
 
+static uint32_t hip04_quirks(void)
+{
+    return PLATFORM_QUIRK_GICV2_16_CPU;
+}
+
 
 PLATFORM_START(hip04, "HISILICON HIP04")
     .compatible = hip04_dt_compat,
     .smp_init = hip04_smp_init,
     .cpu_up = hip04_cpu_up,
     .reset = hip04_reset,
+    .quirks = hip04_quirks,
     .blacklist_dev = hip04_blacklist_dev,
 PLATFORM_END
 
diff --git a/xen/include/asm-arm/platform.h b/xen/include/asm-arm/platform.h
index eefaca6..537fba5 100644
--- a/xen/include/asm-arm/platform.h
+++ b/xen/include/asm-arm/platform.h
@@ -60,6 +60,11 @@ struct platform_desc {
  */
 #define PLATFORM_QUIRK_GUEST_PIRQ_NEED_EOI       (1 << 1)
 
+/*
+ * Quirk for platforms where GICv2 has to handle 16 CPUs
+ */
+#define PLATFORM_QUIRK_GICV2_16_CPU       (1 << 2)
+
 void __init platform_init(void);
 int __init platform_init_time(void);
 int __init platform_specific_mapping(struct domain *d);
-- 
1.9.1



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