irqchip/gic-v3-its: Tag ITS device as shared if allocating for a proxy device
authorMarc Zyngier <maz@kernel.org>
Sun, 29 Nov 2020 13:52:07 +0000 (13:52 +0000)
committerMarc Zyngier <maz@kernel.org>
Fri, 11 Dec 2020 14:47:50 +0000 (14:47 +0000)
The ITS already has some notion of "shared" devices. Let's map the
MSI_ALLOC_FLAGS_PROXY_DEVICE flag onto this internal property.

Signed-off-by: Marc Zyngier <maz@kernel.org>
Tested-by: John Garry <john.garry@huawei.com>
Link: https://lore.kernel.org/r/20201129135208.680293-3-maz@kernel.org
drivers/irqchip/irq-gic-v3-its.c

index d74ef41..c951ad2 100644 (file)
@@ -3487,6 +3487,9 @@ static int its_msi_prepare(struct irq_domain *domain, struct device *dev,
                goto out;
        }
 
+       if (info->flags & MSI_ALLOC_FLAGS_PROXY_DEVICE)
+               its_dev->shared = true;
+
        pr_debug("ITT %d entries, %d bits\n", nvec, ilog2(nvec));
 out:
        mutex_unlock(&its->dev_alloc_lock);