Lines Matching refs:irq
30 .irq = _irq, \
160 unsigned int mask, irq = d->irq - RM200_I8259A_IRQ_BASE; in sni_rm200_disable_8259A_irq() local
163 mask = 1 << irq; in sni_rm200_disable_8259A_irq()
166 if (irq & 8) in sni_rm200_disable_8259A_irq()
175 unsigned int mask, irq = d->irq - RM200_I8259A_IRQ_BASE; in sni_rm200_enable_8259A_irq() local
178 mask = ~(1 << irq); in sni_rm200_enable_8259A_irq()
181 if (irq & 8) in sni_rm200_enable_8259A_irq()
188 static inline int sni_rm200_i8259A_irq_real(unsigned int irq) in sni_rm200_i8259A_irq_real() argument
191 int irqmask = 1 << irq; in sni_rm200_i8259A_irq_real()
193 if (irq < 8) { in sni_rm200_i8259A_irq_real()
213 unsigned int irqmask, irq = d->irq - RM200_I8259A_IRQ_BASE; in sni_rm200_mask_and_ack_8259A() local
216 irqmask = 1 << irq; in sni_rm200_mask_and_ack_8259A()
238 if (irq & 8) { in sni_rm200_mask_and_ack_8259A()
241 writeb(0x60+(irq & 7), rm200_pic_slave + PIC_CMD); in sni_rm200_mask_and_ack_8259A()
246 writeb(0x60+irq, rm200_pic_master + PIC_CMD); in sni_rm200_mask_and_ack_8259A()
255 if (sni_rm200_i8259A_irq_real(irq)) in sni_rm200_mask_and_ack_8259A()
270 "spurious RM200 8259A interrupt: IRQ%d.\n", irq); in sni_rm200_mask_and_ack_8259A()
297 int irq; in sni_rm200_i8259_irq() local
303 irq = readb(rm200_pic_master + PIC_CMD) & 7; in sni_rm200_i8259_irq()
304 if (irq == PIC_CASCADE_IR) { in sni_rm200_i8259_irq()
310 irq = (readb(rm200_pic_slave + PIC_CMD) & 7) + 8; in sni_rm200_i8259_irq()
313 if (unlikely(irq == 7)) { in sni_rm200_i8259_irq()
323 irq = -1; in sni_rm200_i8259_irq()
328 return likely(irq >= 0) ? irq + RM200_I8259A_IRQ_BASE : irq; in sni_rm200_i8259_irq()
382 int irq; in sni_rm200_i8259A_irq_handler() local
384 irq = sni_rm200_i8259_irq(); in sni_rm200_i8259A_irq_handler()
385 if (unlikely(irq < 0)) in sni_rm200_i8259A_irq_handler()
388 do_IRQ(irq); in sni_rm200_i8259A_irq_handler()
432 unsigned int mask = 1 << (d->irq - SNI_RM200_INT_START); in enable_rm200_irq()
439 unsigned int mask = 1 << (d->irq - SNI_RM200_INT_START); in disable_rm200_irq()
455 int irq; in sni_rm200_hwint() local
463 irq = ffs(stat & mask & 0x1f); in sni_rm200_hwint()
465 if (likely(irq > 0)) in sni_rm200_hwint()
466 do_IRQ(irq + SNI_RM200_INT_START - 1); in sni_rm200_hwint()