Lines Matching refs:pirq
104 struct dwapb_gpio_port_irqchip *pirq; member
402 static int dwapb_convert_irqs(struct dwapb_gpio_port_irqchip *pirq, in dwapb_convert_irqs() argument
412 pirq->irq[pirq->nr_irqs++] = pp->irq[i]; in dwapb_convert_irqs()
415 return pirq->nr_irqs ? 0 : -ENOENT; in dwapb_convert_irqs()
422 struct dwapb_gpio_port_irqchip *pirq; in dwapb_configure_irqs() local
427 pirq = devm_kzalloc(gpio->dev, sizeof(*pirq), GFP_KERNEL); in dwapb_configure_irqs()
428 if (!pirq) in dwapb_configure_irqs()
431 if (dwapb_convert_irqs(pirq, pp)) { in dwapb_configure_irqs()
440 port->pirq = pirq; in dwapb_configure_irqs()
441 pirq->irqchip.name = DWAPB_DRIVER_NAME; in dwapb_configure_irqs()
442 pirq->irqchip.irq_ack = dwapb_irq_ack; in dwapb_configure_irqs()
443 pirq->irqchip.irq_mask = dwapb_irq_mask; in dwapb_configure_irqs()
444 pirq->irqchip.irq_unmask = dwapb_irq_unmask; in dwapb_configure_irqs()
445 pirq->irqchip.irq_set_type = dwapb_irq_set_type; in dwapb_configure_irqs()
446 pirq->irqchip.irq_enable = dwapb_irq_enable; in dwapb_configure_irqs()
447 pirq->irqchip.irq_disable = dwapb_irq_disable; in dwapb_configure_irqs()
449 pirq->irqchip.irq_set_wake = dwapb_irq_set_wake; in dwapb_configure_irqs()
471 girq->num_parents = pirq->nr_irqs; in dwapb_configure_irqs()
472 girq->parents = pirq->irq; in dwapb_configure_irqs()
477 girq->chip = &pirq->irqchip; in dwapb_configure_irqs()
482 devm_kfree(gpio->dev, pirq); in dwapb_configure_irqs()