Lines Matching refs:gc
36 struct irq_domain_chip_generic *dgc = orion_irq_domain->gc; in orion_handle_irq()
40 struct irq_chip_generic *gc = in orion_handle_irq() local
42 u32 stat = readl_relaxed(gc->reg_base + ORION_IRQ_CAUSE) & in orion_handle_irq()
43 gc->mask_cache; in orion_handle_irq()
47 gc->irq_base + hwirq, regs); in orion_handle_irq()
78 struct irq_chip_generic *gc = in orion_irq_init() local
87 gc->reg_base = ioremap(r.start, resource_size(&r)); in orion_irq_init()
88 if (!gc->reg_base) in orion_irq_init()
91 gc->chip_types[0].regs.mask = ORION_IRQ_MASK; in orion_irq_init()
92 gc->chip_types[0].chip.irq_mask = irq_gc_mask_clr_bit; in orion_irq_init()
93 gc->chip_types[0].chip.irq_unmask = irq_gc_mask_set_bit; in orion_irq_init()
96 writel(0, gc->reg_base + ORION_IRQ_MASK); in orion_irq_init()
114 struct irq_chip_generic *gc = irq_get_domain_generic_chip(d, 0); in orion_bridge_irq_handler() local
115 u32 stat = readl_relaxed(gc->reg_base + ORION_BRIDGE_IRQ_CAUSE) & in orion_bridge_irq_handler()
116 gc->mask_cache; in orion_bridge_irq_handler()
121 generic_handle_irq(irq_find_mapping(d, gc->irq_base + hwirq)); in orion_bridge_irq_handler()
145 struct irq_chip_generic *gc; in orion_bridge_irq_init() local
183 gc = irq_get_domain_generic_chip(domain, 0); in orion_bridge_irq_init()
184 gc->reg_base = ioremap(r.start, resource_size(&r)); in orion_bridge_irq_init()
185 if (!gc->reg_base) { in orion_bridge_irq_init()
190 gc->chip_types[0].regs.ack = ORION_BRIDGE_IRQ_CAUSE; in orion_bridge_irq_init()
191 gc->chip_types[0].regs.mask = ORION_BRIDGE_IRQ_MASK; in orion_bridge_irq_init()
192 gc->chip_types[0].chip.irq_startup = orion_bridge_irq_startup; in orion_bridge_irq_init()
193 gc->chip_types[0].chip.irq_ack = irq_gc_ack_clr_bit; in orion_bridge_irq_init()
194 gc->chip_types[0].chip.irq_mask = irq_gc_mask_clr_bit; in orion_bridge_irq_init()
195 gc->chip_types[0].chip.irq_unmask = irq_gc_mask_set_bit; in orion_bridge_irq_init()
198 writel(0, gc->reg_base + ORION_BRIDGE_IRQ_MASK); in orion_bridge_irq_init()
199 writel(0, gc->reg_base + ORION_BRIDGE_IRQ_CAUSE); in orion_bridge_irq_init()