Lines Matching refs:gc
62 struct irq_domain_chip_generic *dgc = aic_domain->gc; in aic_handle()
63 struct irq_chip_generic *gc = dgc->gc[0]; in aic_handle() local
67 irqnr = irq_reg_readl(gc, AT91_AIC_IVR); in aic_handle()
68 irqstat = irq_reg_readl(gc, AT91_AIC_ISR); in aic_handle()
71 irq_reg_writel(gc, 0, AT91_AIC_EOICR); in aic_handle()
78 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); in aic_retrigger() local
81 guard(raw_spinlock)(&gc->lock); in aic_retrigger()
82 irq_reg_writel(gc, d->mask, AT91_AIC_ISCR); in aic_retrigger()
89 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); in aic_set_type() local
93 smr = irq_reg_readl(gc, AT91_AIC_SMR(d->hwirq)); in aic_set_type()
98 irq_reg_writel(gc, smr, AT91_AIC_SMR(d->hwirq)); in aic_set_type()
106 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); in aic_suspend() local
108 guard(raw_spinlock)(&gc->lock); in aic_suspend()
109 irq_reg_writel(gc, gc->mask_cache, AT91_AIC_IDCR); in aic_suspend()
110 irq_reg_writel(gc, gc->wake_active, AT91_AIC_IECR); in aic_suspend()
115 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); in aic_resume() local
117 guard(raw_spinlock)(&gc->lock); in aic_resume()
118 irq_reg_writel(gc, gc->wake_active, AT91_AIC_IDCR); in aic_resume()
119 irq_reg_writel(gc, gc->mask_cache, AT91_AIC_IECR); in aic_resume()
124 struct irq_chip_generic *gc = irq_data_get_irq_chip_data(d); in aic_pm_shutdown() local
126 guard(raw_spinlock)(&gc->lock); in aic_pm_shutdown()
127 irq_reg_writel(gc, 0xffffffff, AT91_AIC_IDCR); in aic_pm_shutdown()
128 irq_reg_writel(gc, 0xffffffff, AT91_AIC_ICCR); in aic_pm_shutdown()
138 struct irq_chip_generic *gc = irq_get_domain_generic_chip(domain, 0); in aic_hw_init() local
146 irq_reg_writel(gc, 0, AT91_AIC_EOICR); in aic_hw_init()
153 irq_reg_writel(gc, 0xffffffff, AT91_AIC_SPU); in aic_hw_init()
156 irq_reg_writel(gc, 0, AT91_AIC_DCR); in aic_hw_init()
159 irq_reg_writel(gc, 0xffffffff, AT91_AIC_IDCR); in aic_hw_init()
160 irq_reg_writel(gc, 0xffffffff, AT91_AIC_ICCR); in aic_hw_init()
163 irq_reg_writel(gc, i, AT91_AIC_SVR(i)); in aic_hw_init()
172 struct irq_domain_chip_generic *dgc = d->gc; in aic_irq_domain_xlate()
173 struct irq_chip_generic *gc; in aic_irq_domain_xlate() local
189 gc = dgc->gc[idx]; in aic_irq_domain_xlate()
191 guard(raw_spinlock_irq)(&gc->lock); in aic_irq_domain_xlate()
192 smr = irq_reg_readl(gc, AT91_AIC_SMR(*out_hwirq)); in aic_irq_domain_xlate()
194 irq_reg_writel(gc, smr, AT91_AIC_SMR(*out_hwirq)); in aic_irq_domain_xlate()
236 struct irq_chip_generic *gc; in aic_of_init() local
248 gc = irq_get_domain_generic_chip(domain, 0); in aic_of_init()
250 gc->chip_types[0].regs.eoi = AT91_AIC_EOICR; in aic_of_init()
251 gc->chip_types[0].regs.enable = AT91_AIC_IECR; in aic_of_init()
252 gc->chip_types[0].regs.disable = AT91_AIC_IDCR; in aic_of_init()
253 gc->chip_types[0].chip.irq_mask = irq_gc_mask_disable_reg; in aic_of_init()
254 gc->chip_types[0].chip.irq_unmask = irq_gc_unmask_enable_reg; in aic_of_init()
255 gc->chip_types[0].chip.irq_retrigger = aic_retrigger; in aic_of_init()
256 gc->chip_types[0].chip.irq_set_type = aic_set_type; in aic_of_init()
257 gc->chip_types[0].chip.irq_suspend = aic_suspend; in aic_of_init()
258 gc->chip_types[0].chip.irq_resume = aic_resume; in aic_of_init()
259 gc->chip_types[0].chip.irq_pm_shutdown = aic_pm_shutdown; in aic_of_init()