Lines Matching refs:irq_setup
259 int omap_prcm_register_chain_handler(struct omap_prcm_irq_setup *irq_setup) in omap_prcm_register_chain_handler() argument
267 if (!irq_setup) in omap_prcm_register_chain_handler()
270 nr_regs = irq_setup->nr_regs; in omap_prcm_register_chain_handler()
282 prcm_irq_setup = irq_setup; in omap_prcm_register_chain_handler()
296 for (i = 0; i < irq_setup->nr_irqs; i++) { in omap_prcm_register_chain_handler()
297 offset = irq_setup->irqs[i].offset; in omap_prcm_register_chain_handler()
299 if (irq_setup->irqs[i].priority) in omap_prcm_register_chain_handler()
300 irq_setup->priority_mask[offset >> 5] |= in omap_prcm_register_chain_handler()
304 irq = irq_setup->irq; in omap_prcm_register_chain_handler()
307 irq_setup->base_irq = irq_alloc_descs(-1, 0, irq_setup->nr_regs * 32, in omap_prcm_register_chain_handler()
310 if (irq_setup->base_irq < 0) { in omap_prcm_register_chain_handler()
312 irq_setup->base_irq); in omap_prcm_register_chain_handler()
316 for (i = 0; i < irq_setup->nr_regs; i++) { in omap_prcm_register_chain_handler()
318 irq_setup->base_irq + i * 32, prm_base.va, in omap_prcm_register_chain_handler()
330 ct->regs.ack = irq_setup->ack + i * 4; in omap_prcm_register_chain_handler()
331 ct->regs.mask = irq_setup->mask + i * 4; in omap_prcm_register_chain_handler()
338 omap_pcs_legacy_init(irq, irq_setup->reconfigure_io_chain); in omap_prcm_register_chain_handler()