Lines Matching refs:irq
42 unsigned int irq = d->irq; in mn10300_cpupic_ack() local
47 GxICR_u8(irq) = GxICR_DETECT; in mn10300_cpupic_ack()
48 tmp = GxICR(irq); in mn10300_cpupic_ack()
52 static void __mask_and_set_icr(unsigned int irq, in __mask_and_set_icr() argument
59 tmp = GxICR(irq); in __mask_and_set_icr()
60 GxICR(irq) = (tmp & mask) | set; in __mask_and_set_icr()
61 tmp = GxICR(irq); in __mask_and_set_icr()
67 __mask_and_set_icr(d->irq, GxICR_LEVEL, 0); in mn10300_cpupic_mask()
72 unsigned int irq = d->irq; in mn10300_cpupic_mask_ack() local
79 if (!test_and_clear_bit(irq, irq_affinity_request)) { in mn10300_cpupic_mask_ack()
80 tmp = GxICR(irq); in mn10300_cpupic_mask_ack()
81 GxICR(irq) = (tmp & GxICR_LEVEL) | GxICR_DETECT; in mn10300_cpupic_mask_ack()
82 tmp = GxICR(irq); in mn10300_cpupic_mask_ack()
85 tmp = GxICR(irq); in mn10300_cpupic_mask_ack()
86 GxICR(irq) = (tmp & GxICR_LEVEL); in mn10300_cpupic_mask_ack()
87 tmp2 = GxICR(irq); in mn10300_cpupic_mask_ack()
89 irq_affinity_online[irq] = in mn10300_cpupic_mask_ack()
92 CROSS_GxICR(irq, irq_affinity_online[irq]) = in mn10300_cpupic_mask_ack()
94 tmp = CROSS_GxICR(irq, irq_affinity_online[irq]); in mn10300_cpupic_mask_ack()
99 __mask_and_set_icr(irq, GxICR_LEVEL, GxICR_DETECT); in mn10300_cpupic_mask_ack()
105 __mask_and_set_icr(d->irq, GxICR_LEVEL, GxICR_ENABLE); in mn10300_cpupic_unmask()
110 unsigned int irq = d->irq; in mn10300_cpupic_unmask_clear() local
121 if (!test_and_clear_bit(irq, irq_affinity_request)) { in mn10300_cpupic_unmask_clear()
122 tmp = GxICR(irq); in mn10300_cpupic_unmask_clear()
123 GxICR(irq) = (tmp & GxICR_LEVEL) | GxICR_ENABLE | GxICR_DETECT; in mn10300_cpupic_unmask_clear()
124 tmp = GxICR(irq); in mn10300_cpupic_unmask_clear()
126 tmp = GxICR(irq); in mn10300_cpupic_unmask_clear()
128 irq_affinity_online[irq] = cpumask_any_and(irq_data_get_affinity_mask(d), in mn10300_cpupic_unmask_clear()
130 CROSS_GxICR(irq, irq_affinity_online[irq]) = (tmp & GxICR_LEVEL) | GxICR_ENABLE | GxICR_DETECT; in mn10300_cpupic_unmask_clear()
131 tmp = CROSS_GxICR(irq, irq_affinity_online[irq]); in mn10300_cpupic_unmask_clear()
136 __mask_and_set_icr(irq, GxICR_LEVEL, GxICR_ENABLE | GxICR_DETECT); in mn10300_cpupic_unmask_clear()
148 set_bit(d->irq, irq_affinity_request); in mn10300_cpupic_setaffinity()
199 void ack_bad_irq(int irq) in ack_bad_irq() argument
201 printk(KERN_WARNING "unexpected IRQ trap at vector %02x\n", irq); in ack_bad_irq()
208 void set_intr_level(int irq, u16 level) in set_intr_level() argument
212 __mask_and_set_icr(irq, GxICR_ENABLE, level); in set_intr_level()
219 void mn10300_set_lateack_irq_type(int irq) in mn10300_set_lateack_irq_type() argument
221 irq_set_chip_and_handler(irq, &mn10300_cpu_pic_level, in mn10300_set_lateack_irq_type()
230 int irq; in init_IRQ() local
232 for (irq = 0; irq < NR_IRQS; irq++) in init_IRQ()
233 if (irq_get_chip(irq) == &no_irq_chip) in init_IRQ()
238 irq_set_chip_and_handler(irq, &mn10300_cpu_pic_edge, in init_IRQ()
251 int irq; in do_IRQ() local
273 irq = IAGR & IAGR_GN; in do_IRQ()
274 if (!irq) in do_IRQ()
279 generic_handle_irq(irq >> 2); in do_IRQ()
313 int irq; in migrate_irqs() local
318 for (irq = 0; irq < NR_IRQS; irq++) { in migrate_irqs()
319 struct irq_data *data = irq_get_irq_data(irq); in migrate_irqs()
326 !cpumask_intersects(&irq_affinity[irq], cpu_online_mask)) { in migrate_irqs()
333 if (irq_affinity_online[irq] == self) { in migrate_irqs()
336 x = GxICR(irq); in migrate_irqs()
337 GxICR(irq) = x & GxICR_LEVEL; in migrate_irqs()
338 tmp = GxICR(irq); in migrate_irqs()
341 irq_affinity_online[irq] = new; in migrate_irqs()
343 CROSS_GxICR(irq, new) = in migrate_irqs()
345 tmp = CROSS_GxICR(irq, new); in migrate_irqs()
348 if (GxICR(irq) & GxICR_REQUEST) in migrate_irqs()
350 CROSS_GxICR(irq, new) = x; in migrate_irqs()
351 tmp = CROSS_GxICR(irq, new); in migrate_irqs()