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:
@@ -76,7 +76,7 @@ static int __init pasemi_register_i2c_devices(void)
|
||||
}
|
||||
|
||||
info.irq = irq_of_parse_and_map(node, 0);
|
||||
if (info.irq == NO_IRQ)
|
||||
if (!info.irq)
|
||||
info.irq = -1;
|
||||
|
||||
if (find_i2c_driver(node, &info) < 0)
|
||||
|
@@ -68,7 +68,7 @@ static void pasemi_msi_teardown_msi_irqs(struct pci_dev *pdev)
|
||||
pr_debug("pasemi_msi_teardown_msi_irqs, pdev %p\n", pdev);
|
||||
|
||||
for_each_pci_msi_entry(entry, pdev) {
|
||||
if (entry->irq == NO_IRQ)
|
||||
if (!entry->irq)
|
||||
continue;
|
||||
|
||||
hwirq = virq_to_hw(entry->irq);
|
||||
@@ -109,7 +109,7 @@ static int pasemi_msi_setup_msi_irqs(struct pci_dev *pdev, int nvec, int type)
|
||||
}
|
||||
|
||||
virq = irq_create_mapping(msi_mpic->irqhost, hwirq);
|
||||
if (virq == NO_IRQ) {
|
||||
if (!virq) {
|
||||
pr_debug("pasemi_msi: failed mapping hwirq 0x%x\n",
|
||||
hwirq);
|
||||
msi_bitmap_free_hwirqs(&msi_mpic->msi_bitmap, hwirq,
|
||||
|
@@ -59,7 +59,7 @@ struct mce_regs {
|
||||
|
||||
static struct mce_regs mce_regs[MAX_MCE_REGS];
|
||||
static int num_mce_regs;
|
||||
static int nmi_virq = NO_IRQ;
|
||||
static int nmi_virq = 0;
|
||||
|
||||
|
||||
static void __noreturn pas_restart(char *cmd)
|
||||
@@ -264,7 +264,7 @@ static int pas_machine_check_handler(struct pt_regs *regs)
|
||||
srr0 = regs->nip;
|
||||
srr1 = regs->msr;
|
||||
|
||||
if (nmi_virq != NO_IRQ && mpic_get_mcirq() == nmi_virq) {
|
||||
if (nmi_virq && mpic_get_mcirq() == nmi_virq) {
|
||||
printk(KERN_ERR "NMI delivered\n");
|
||||
debugger(regs);
|
||||
mpic_end_irq(irq_get_irq_data(nmi_virq));
|
||||
|
Referens i nytt ärende
Block a user