Lines Matching refs:shirq
60 struct spear_shirq *shirq = irq_data_get_irq_chip_data(d); in shirq_irq_mask() local
61 u32 val, shift = d->irq - shirq->virq_base + shirq->offset; in shirq_irq_mask()
62 u32 __iomem *reg = shirq->base + shirq->mask_reg; in shirq_irq_mask()
72 struct spear_shirq *shirq = irq_data_get_irq_chip_data(d); in shirq_irq_unmask() local
73 u32 val, shift = d->irq - shirq->virq_base + shirq->offset; in shirq_irq_unmask()
74 u32 __iomem *reg = shirq->base + shirq->mask_reg; in shirq_irq_unmask()
189 struct spear_shirq *shirq = irq_desc_get_handler_data(desc); in shirq_handler() local
192 pend = readl(shirq->base + shirq->status_reg) & shirq->mask; in shirq_handler()
193 pend >>= shirq->offset; in shirq_handler()
199 generic_handle_irq(shirq->virq_base + irq); in shirq_handler()
203 static void __init spear_shirq_register(struct spear_shirq *shirq, in spear_shirq_register() argument
208 if (!shirq->irq_chip) in spear_shirq_register()
211 irq_set_chained_handler_and_data(parent_irq, shirq_handler, shirq); in spear_shirq_register()
213 for (i = 0; i < shirq->nr_irqs; i++) { in spear_shirq_register()
214 irq_set_chip_and_handler(shirq->virq_base + i, in spear_shirq_register()
215 shirq->irq_chip, handle_simple_irq); in spear_shirq_register()
216 irq_set_chip_data(shirq->virq_base + i, shirq); in spear_shirq_register()