static unsigned int ics_rtas_startup(struct irq_data *d) { #ifdef CONFIG_PCI_MSI if (d->msi_desc) unmask_msi_irq(d); #endif ics_rtas_unmask_irq(d); return 0; }
static unsigned int xics_startup(unsigned int virq) { /* * The generic MSI code returns with the interrupt disabled on the * card, using the MSI mask bits. Firmware doesn't appear to unmask * at that level, so we do it here by hand. */ if (irq_to_desc(virq)->msi_desc) unmask_msi_irq(virq); /* unmask it */ xics_unmask_irq(virq); return 0; }
static unsigned int ics_rtas_startup(struct irq_data *d) { #ifdef CONFIG_PCI_MSI /* * The generic MSI code returns with the interrupt disabled on the * card, using the MSI mask bits. Firmware doesn't appear to unmask * at that level, so we do it here by hand. */ if (d->msi_desc) unmask_msi_irq(d); #endif /* unmask it */ ics_rtas_unmask_irq(d); return 0; }
static void imx_msi_irq_enable(struct irq_data *d) { imx_pcie_enable_irq(d->irq - IRQ_IMX_MSI_0, 1); return unmask_msi_irq(d); }
static void imx_msi_irq_unmask(struct irq_data *d) { imx_pcie_mask_irq(d->irq - IRQ_IMX_MSI_0, 0); return unmask_msi_irq(d); }