]> git.proxmox.com Git - mirror_ubuntu-disco-kernel.git/commitdiff
irqchip/gic-v3-its: Make GICv4_ITS_LIST_MAX globally available
authorMarc Zyngier <marc.zyngier@arm.com>
Sun, 8 Oct 2017 17:48:06 +0000 (18:48 +0100)
committerMarc Zyngier <marc.zyngier@arm.com>
Thu, 19 Oct 2017 10:22:41 +0000 (11:22 +0100)
As we're about to make use of the maximum number of ITSs in
a GICv4 system, let's make this value global (and rename it to
GICv4_ITS_LIST_MAX).

Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
drivers/irqchip/irq-gic-v3-its.c
include/linux/irqchip/arm-gic-v4.h

index 994f0879e7dfb65df9dda710a74667172d888e98..a63b4ee34860495c957923c337238829220a645c 100644 (file)
@@ -156,12 +156,6 @@ static DEFINE_SPINLOCK(its_lock);
 static struct rdists *gic_rdists;
 static struct irq_domain *its_parent;
 
-/*
- * We have a maximum number of 16 ITSs in the whole system if we're
- * using the ITSList mechanism
- */
-#define ITS_LIST_MAX           16
-
 static unsigned long its_list_map;
 static u16 vmovp_seq_num;
 static DEFINE_RAW_SPINLOCK(vmovp_lock);
@@ -2988,8 +2982,8 @@ static int __init its_compute_its_list_map(struct resource *res,
         * locking. Should this change, we should address
         * this.
         */
-       its_number = find_first_zero_bit(&its_list_map, ITS_LIST_MAX);
-       if (its_number >= ITS_LIST_MAX) {
+       its_number = find_first_zero_bit(&its_list_map, GICv4_ITS_LIST_MAX);
+       if (its_number >= GICv4_ITS_LIST_MAX) {
                pr_err("ITS@%pa: No ITSList entry available!\n",
                       &res->start);
                return -EINVAL;
index 58a4d89aa82c022644ac371bdfa64ecedcd5ee26..e26a668826e63530807ed5bea1e25d218e46c92b 100644 (file)
 
 struct its_vpe;
 
+/*
+ * Maximum number of ITTs when GITS_TYPER.VMOVP == 0, using the
+ * ITSList mechanism to perform inter-ITS synchronization.
+ */
+#define GICv4_ITS_LIST_MAX             16
+
 /* Embedded in kvm.arch */
 struct its_vm {
        struct fwnode_handle    *fwnode;