Lines Matching defs:hwirq
1315 static int gpmc_irq_endis(unsigned long hwirq, bool endis)
1320 if (hwirq >= GPMC_NR_NAND_IRQS)
1321 hwirq += 8 - GPMC_NR_NAND_IRQS;
1325 regval |= BIT(hwirq);
1327 regval &= ~BIT(hwirq);
1335 gpmc_irq_endis(p->hwirq, false);
1340 gpmc_irq_endis(p->hwirq, true);
1345 gpmc_irq_endis(d->hwirq, false);
1350 gpmc_irq_endis(d->hwirq, true);
1353 static void gpmc_irq_edge_config(unsigned long hwirq, bool rising_edge)
1358 if (hwirq < GPMC_NR_NAND_IRQS)
1362 hwirq += 8 - GPMC_NR_NAND_IRQS;
1366 regval &= ~BIT(hwirq);
1368 regval |= BIT(hwirq);
1375 unsigned int hwirq = d->hwirq;
1378 if (hwirq >= GPMC_NR_NAND_IRQS)
1379 hwirq += 8 - GPMC_NR_NAND_IRQS;
1382 gpmc_write_reg(GPMC_IRQSTATUS, BIT(hwirq));
1388 if (d->hwirq < GPMC_NR_NAND_IRQS)
1393 gpmc_irq_edge_config(d->hwirq, false);
1395 gpmc_irq_edge_config(d->hwirq, true);
1427 int hwirq, virq;
1437 for (hwirq = 0; hwirq < gpmc->nirqs; hwirq++) {
1439 if (hwirq == GPMC_NR_NAND_IRQS)
1442 if (regvalx & BIT(hwirq)) {
1443 virq = irq_find_mapping(gpmc_irq_domain, hwirq);
1446 "spurious irq detected hwirq %d, virq %d\n",
1447 hwirq, virq);
1501 int hwirq;
1505 for (hwirq = 0; hwirq < gpmc->nirqs; hwirq++)
1506 irq_dispose_mapping(irq_find_mapping(gpmc_irq_domain, hwirq));