Lines Matching refs:irq
35 int irq = txn_alloc_irq(GSC_EIM_WIDTH); in gsc_alloc_irq() local
36 if (irq < 0) { in gsc_alloc_irq()
38 return irq; in gsc_alloc_irq()
41 i->txn_addr = txn_alloc_addr(irq); in gsc_alloc_irq()
42 i->txn_data = txn_alloc_data(irq); in gsc_alloc_irq()
43 i->irq = irq; in gsc_alloc_irq()
45 return irq; in gsc_alloc_irq()
48 int gsc_claim_irq(struct gsc_irq *i, int irq) in gsc_claim_irq() argument
50 int c = irq; in gsc_claim_irq()
52 irq += CPU_IRQ_BASE; /* virtualize the IRQ first */ in gsc_claim_irq()
54 irq = txn_claim_irq(irq); in gsc_claim_irq()
55 if (irq < 0) { in gsc_claim_irq()
57 return irq; in gsc_claim_irq()
60 i->txn_addr = txn_alloc_addr(irq); in gsc_claim_irq()
61 i->txn_data = txn_alloc_data(irq); in gsc_claim_irq()
62 i->irq = irq; in gsc_claim_irq()
64 return irq; in gsc_claim_irq()
84 unsigned int irq = gsc_asic->global_irq[local_irq]; in gsc_asic_intr() local
85 generic_handle_irq(irq); in gsc_asic_intr()
92 int gsc_find_local_irq(unsigned int irq, int *global_irqs, int limit) in gsc_find_local_irq() argument
97 if (global_irqs[local_irq] == irq) in gsc_find_local_irq()
107 int local_irq = gsc_find_local_irq(d->irq, irq_dev->global_irq, 32); in gsc_asic_mask_irq()
110 DEBPRINTK(KERN_DEBUG "%s(%d) %s: IMR 0x%x\n", __func__, d->irq, in gsc_asic_mask_irq()
122 int local_irq = gsc_find_local_irq(d->irq, irq_dev->global_irq, 32); in gsc_asic_unmask_irq()
125 DEBPRINTK(KERN_DEBUG "%s(%d) %s: IMR 0x%x\n", __func__, d->irq, in gsc_asic_unmask_irq()
153 gsc_dev->gsc_irq.txn_addr = txn_affinity_addr(d->irq, cpu_irq); in gsc_set_affinity_irq()
177 static int irq = GSC_IRQ_BASE; in gsc_assign_irq() local
179 if (irq > GSC_IRQ_MAX) in gsc_assign_irq()
182 irq_set_chip_and_handler(irq, type, handle_simple_irq); in gsc_assign_irq()
183 irq_set_chip_data(irq, data); in gsc_assign_irq()
185 return irq++; in gsc_assign_irq()
190 int irq = asic->global_irq[local_irq]; in gsc_asic_assign_irq() local
192 if (irq <= 0) { in gsc_asic_assign_irq()
193 irq = gsc_assign_irq(&gsc_asic_interrupt_type, asic); in gsc_asic_assign_irq()
194 if (irq == NO_IRQ) in gsc_asic_assign_irq()
197 asic->global_irq[local_irq] = irq; in gsc_asic_assign_irq()
199 *irqp = irq; in gsc_asic_assign_irq()
252 parent->irq, gsc_asic->eim); in gsc_common_setup()