powerpc: Remove all usages of NO_IRQ
NO_IRQ has been == 0 on powerpc for just over ten years (since commit
0ebfff1491
("[POWERPC] Add new interrupt mapping core and change
platforms to use it")). It's also 0 on most other arches.
Although it's fairly harmless, every now and then it causes confusion
when a driver is built on powerpc and another arch which doesn't define
NO_IRQ. There's at least 6 definitions of NO_IRQ in drivers/, at least
some of which are to work around that problem.
So we'd like to remove it. This is fairly trivial in the arch code, we
just convert:
if (irq == NO_IRQ) to if (!irq)
if (irq != NO_IRQ) to if (irq)
irq = NO_IRQ; to irq = 0;
return NO_IRQ; to return 0;
And a few other odd cases as well.
At least for now we keep the #define NO_IRQ, because there is driver
code that uses NO_IRQ and the fixes to remove those will go via other
trees.
Note we also change some occurrences in PPC sound drivers, drivers/ps3,
and drivers/macintosh.
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
@@ -1649,7 +1649,7 @@ void __init mpic_init(struct mpic *mpic)
|
||||
/* Check if this MPIC is chained from a parent interrupt controller */
|
||||
if (mpic->flags & MPIC_SECONDARY) {
|
||||
int virq = irq_of_parse_and_map(mpic->node, 0);
|
||||
if (virq != NO_IRQ) {
|
||||
if (virq) {
|
||||
printk(KERN_INFO "%s: hooking up to IRQ %d\n",
|
||||
mpic->node->full_name, virq);
|
||||
irq_set_handler_data(virq, mpic);
|
||||
@@ -1778,13 +1778,13 @@ static unsigned int _mpic_get_one_irq(struct mpic *mpic, int reg)
|
||||
if (unlikely(src == mpic->spurious_vec)) {
|
||||
if (mpic->flags & MPIC_SPV_EOI)
|
||||
mpic_eoi(mpic);
|
||||
return NO_IRQ;
|
||||
return 0;
|
||||
}
|
||||
if (unlikely(mpic->protected && test_bit(src, mpic->protected))) {
|
||||
printk_ratelimited(KERN_WARNING "%s: Got protected source %d !\n",
|
||||
mpic->name, (int)src);
|
||||
mpic_eoi(mpic);
|
||||
return NO_IRQ;
|
||||
return 0;
|
||||
}
|
||||
|
||||
return irq_linear_revmap(mpic->irqhost, src);
|
||||
@@ -1817,17 +1817,17 @@ unsigned int mpic_get_coreint_irq(void)
|
||||
if (unlikely(src == mpic->spurious_vec)) {
|
||||
if (mpic->flags & MPIC_SPV_EOI)
|
||||
mpic_eoi(mpic);
|
||||
return NO_IRQ;
|
||||
return 0;
|
||||
}
|
||||
if (unlikely(mpic->protected && test_bit(src, mpic->protected))) {
|
||||
printk_ratelimited(KERN_WARNING "%s: Got protected source %d !\n",
|
||||
mpic->name, (int)src);
|
||||
return NO_IRQ;
|
||||
return 0;
|
||||
}
|
||||
|
||||
return irq_linear_revmap(mpic->irqhost, src);
|
||||
#else
|
||||
return NO_IRQ;
|
||||
return 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -1852,7 +1852,7 @@ void mpic_request_ipis(void)
|
||||
for (i = 0; i < 4; i++) {
|
||||
unsigned int vipi = irq_create_mapping(mpic->irqhost,
|
||||
mpic->ipi_vecs[0] + i);
|
||||
if (vipi == NO_IRQ) {
|
||||
if (!vipi) {
|
||||
printk(KERN_ERR "Failed to map %s\n", smp_ipi_name[i]);
|
||||
continue;
|
||||
}
|
||||
|
Reference in New Issue
Block a user