Lines Matching refs:pirq
93 struct dwapb_gpio_port_irqchip *pirq; member
394 static int dwapb_convert_irqs(struct dwapb_gpio_port_irqchip *pirq, in dwapb_convert_irqs() argument
404 pirq->irq[pirq->nr_irqs++] = pp->irq[i]; in dwapb_convert_irqs()
407 return pirq->nr_irqs ? 0 : -ENOENT; in dwapb_convert_irqs()
414 struct dwapb_gpio_port_irqchip *pirq; in dwapb_configure_irqs() local
419 pirq = devm_kzalloc(gpio->dev, sizeof(*pirq), GFP_KERNEL); in dwapb_configure_irqs()
420 if (!pirq) in dwapb_configure_irqs()
423 if (dwapb_convert_irqs(pirq, pp)) { in dwapb_configure_irqs()
432 port->pirq = pirq; in dwapb_configure_irqs()
433 pirq->irqchip.name = DWAPB_DRIVER_NAME; in dwapb_configure_irqs()
434 pirq->irqchip.irq_ack = dwapb_irq_ack; in dwapb_configure_irqs()
435 pirq->irqchip.irq_mask = dwapb_irq_mask; in dwapb_configure_irqs()
436 pirq->irqchip.irq_unmask = dwapb_irq_unmask; in dwapb_configure_irqs()
437 pirq->irqchip.irq_set_type = dwapb_irq_set_type; in dwapb_configure_irqs()
438 pirq->irqchip.irq_enable = dwapb_irq_enable; in dwapb_configure_irqs()
439 pirq->irqchip.irq_disable = dwapb_irq_disable; in dwapb_configure_irqs()
441 pirq->irqchip.irq_set_wake = dwapb_irq_set_wake; in dwapb_configure_irqs()
445 girq->num_parents = pirq->nr_irqs; in dwapb_configure_irqs()
446 girq->parents = pirq->irq; in dwapb_configure_irqs()
468 girq->chip = &pirq->irqchip; in dwapb_configure_irqs()
473 devm_kfree(gpio->dev, pirq); in dwapb_configure_irqs()