Messages in this thread | | | Date | Thu, 26 Apr 2018 21:50:51 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [PATCH 2/7] genirq/msi: Limit level-triggered MSI to platform devices |
| |
On Mon, 23 Apr 2018, Marc Zyngier wrote:
> Nobody would be insane enough to try and use level triggered > MSIs on PCI, but let's make sure it doesn't happen. Also, > let's mandate that the irqchip backing the platform MSI domain > is providing an irq_set_type method (or the whole thing would > be a bit useless). > > Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> > --- > drivers/base/platform-msi.c | 3 +++ > drivers/pci/msi.c | 3 +++ > 2 files changed, 6 insertions(+) > > diff --git a/drivers/base/platform-msi.c b/drivers/base/platform-msi.c > index 8e22073aeeed..3b9694a6beaa 100644 > --- a/drivers/base/platform-msi.c > +++ b/drivers/base/platform-msi.c > @@ -101,6 +101,9 @@ static void platform_msi_update_chip_ops(struct msi_domain_info *info) > chip->irq_set_affinity = msi_domain_set_affinity; > if (!chip->irq_write_msi_msg) > chip->irq_write_msi_msg = platform_msi_write_msg; > + if (WARN_ON((info->flags & MSI_FLAG_LEVEL_CAPABLE) && > + !chip->irq_set_type))
Shouldn't we just require something like IRQCHIP_SUPPORTS_MSI_LEVEL or such in chip->flags being set instead?
Thanks,
tglx
| |