Lines Matching refs:irq

38 static inline u32 get_ext_irq_perf_reg(int irq)  in get_ext_irq_perf_reg()  argument
40 if (irq < 4) in get_ext_irq_perf_reg()
116 unsigned irq = d->irq - IRQ_INTERNAL_BASE; \
117 unsigned reg = (irq / 32) ^ (width/32 - 1); \
118 unsigned bit = irq & 0x1f; \
138 unsigned irq = d->irq - IRQ_INTERNAL_BASE; \
139 unsigned reg = (irq / 32) ^ (width/32 - 1); \
140 unsigned bit = irq & 0x1f; \
216 unsigned int irq = d->irq - IRQ_EXTERNAL_BASE; in bcm63xx_external_irq_mask() local
220 regaddr = get_ext_irq_perf_reg(irq); in bcm63xx_external_irq_mask()
225 reg &= ~EXTIRQ_CFG_MASK_6348(irq % 4); in bcm63xx_external_irq_mask()
227 reg &= ~EXTIRQ_CFG_MASK(irq % 4); in bcm63xx_external_irq_mask()
233 internal_irq_mask(irq_get_irq_data(irq + ext_irq_start)); in bcm63xx_external_irq_mask()
238 unsigned int irq = d->irq - IRQ_EXTERNAL_BASE; in bcm63xx_external_irq_unmask() local
242 regaddr = get_ext_irq_perf_reg(irq); in bcm63xx_external_irq_unmask()
247 reg |= EXTIRQ_CFG_MASK_6348(irq % 4); in bcm63xx_external_irq_unmask()
249 reg |= EXTIRQ_CFG_MASK(irq % 4); in bcm63xx_external_irq_unmask()
255 internal_irq_unmask(irq_get_irq_data(irq + ext_irq_start), in bcm63xx_external_irq_unmask()
261 unsigned int irq = d->irq - IRQ_EXTERNAL_BASE; in bcm63xx_external_irq_clear() local
265 regaddr = get_ext_irq_perf_reg(irq); in bcm63xx_external_irq_clear()
270 reg |= EXTIRQ_CFG_CLEAR_6348(irq % 4); in bcm63xx_external_irq_clear()
272 reg |= EXTIRQ_CFG_CLEAR(irq % 4); in bcm63xx_external_irq_clear()
281 unsigned int irq = d->irq - IRQ_EXTERNAL_BASE; in bcm63xx_external_irq_set_type() local
318 regaddr = get_ext_irq_perf_reg(irq); in bcm63xx_external_irq_set_type()
321 irq %= 4; in bcm63xx_external_irq_set_type()
326 reg |= EXTIRQ_CFG_LEVELSENSE_6348(irq); in bcm63xx_external_irq_set_type()
328 reg &= ~EXTIRQ_CFG_LEVELSENSE_6348(irq); in bcm63xx_external_irq_set_type()
330 reg |= EXTIRQ_CFG_SENSE_6348(irq); in bcm63xx_external_irq_set_type()
332 reg &= ~EXTIRQ_CFG_SENSE_6348(irq); in bcm63xx_external_irq_set_type()
334 reg |= EXTIRQ_CFG_BOTHEDGE_6348(irq); in bcm63xx_external_irq_set_type()
336 reg &= ~EXTIRQ_CFG_BOTHEDGE_6348(irq); in bcm63xx_external_irq_set_type()
347 reg |= EXTIRQ_CFG_LEVELSENSE(irq); in bcm63xx_external_irq_set_type()
349 reg &= ~EXTIRQ_CFG_LEVELSENSE(irq); in bcm63xx_external_irq_set_type()
351 reg |= EXTIRQ_CFG_SENSE(irq); in bcm63xx_external_irq_set_type()
353 reg &= ~EXTIRQ_CFG_SENSE(irq); in bcm63xx_external_irq_set_type()
355 reg |= EXTIRQ_CFG_BOTHEDGE(irq); in bcm63xx_external_irq_set_type()
357 reg &= ~EXTIRQ_CFG_BOTHEDGE(irq); in bcm63xx_external_irq_set_type()
368 __irq_set_handler_locked(d->irq, handle_level_irq); in bcm63xx_external_irq_set_type()
370 __irq_set_handler_locked(d->irq, handle_edge_irq); in bcm63xx_external_irq_set_type()