diff options
author | Michael Ellerman <mpe@ellerman.id.au> | 2016-09-06 07:53:24 -0400 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2016-09-20 06:57:12 -0400 |
commit | ef24ba7091517d2bbf9ba2cb4256c0dccd51d248 (patch) | |
tree | f988a2b82eab1ec83aa2a08e34190a9a32b4035f /drivers/macintosh/smu.c | |
parent | 9d82fd2fae925efdf546cc25afdc664a2e3a2d9f (diff) |
powerpc: Remove all usages of NO_IRQ
NO_IRQ has been == 0 on powerpc for just over ten years (since commit
0ebfff1491ef ("[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>
Diffstat (limited to 'drivers/macintosh/smu.c')
-rw-r--r-- | drivers/macintosh/smu.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/drivers/macintosh/smu.c b/drivers/macintosh/smu.c index d6f72c826c1c..08edb2c25b60 100644 --- a/drivers/macintosh/smu.c +++ b/drivers/macintosh/smu.c | |||
@@ -279,7 +279,7 @@ int smu_queue_cmd(struct smu_cmd *cmd) | |||
279 | spin_unlock_irqrestore(&smu->lock, flags); | 279 | spin_unlock_irqrestore(&smu->lock, flags); |
280 | 280 | ||
281 | /* Workaround for early calls when irq isn't available */ | 281 | /* Workaround for early calls when irq isn't available */ |
282 | if (!smu_irq_inited || smu->db_irq == NO_IRQ) | 282 | if (!smu_irq_inited || !smu->db_irq) |
283 | smu_spinwait_cmd(cmd); | 283 | smu_spinwait_cmd(cmd); |
284 | 284 | ||
285 | return 0; | 285 | return 0; |
@@ -498,8 +498,8 @@ int __init smu_init (void) | |||
498 | INIT_LIST_HEAD(&smu->cmd_list); | 498 | INIT_LIST_HEAD(&smu->cmd_list); |
499 | INIT_LIST_HEAD(&smu->cmd_i2c_list); | 499 | INIT_LIST_HEAD(&smu->cmd_i2c_list); |
500 | smu->of_node = np; | 500 | smu->of_node = np; |
501 | smu->db_irq = NO_IRQ; | 501 | smu->db_irq = 0; |
502 | smu->msg_irq = NO_IRQ; | 502 | smu->msg_irq = 0; |
503 | 503 | ||
504 | /* smu_cmdbuf_abs is in the low 2G of RAM, can be converted to a | 504 | /* smu_cmdbuf_abs is in the low 2G of RAM, can be converted to a |
505 | * 32 bits value safely | 505 | * 32 bits value safely |
@@ -587,13 +587,13 @@ static int smu_late_init(void) | |||
587 | 587 | ||
588 | if (smu->db_node) { | 588 | if (smu->db_node) { |
589 | smu->db_irq = irq_of_parse_and_map(smu->db_node, 0); | 589 | smu->db_irq = irq_of_parse_and_map(smu->db_node, 0); |
590 | if (smu->db_irq == NO_IRQ) | 590 | if (!smu->db_irq) |
591 | printk(KERN_ERR "smu: failed to map irq for node %s\n", | 591 | printk(KERN_ERR "smu: failed to map irq for node %s\n", |
592 | smu->db_node->full_name); | 592 | smu->db_node->full_name); |
593 | } | 593 | } |
594 | if (smu->msg_node) { | 594 | if (smu->msg_node) { |
595 | smu->msg_irq = irq_of_parse_and_map(smu->msg_node, 0); | 595 | smu->msg_irq = irq_of_parse_and_map(smu->msg_node, 0); |
596 | if (smu->msg_irq == NO_IRQ) | 596 | if (!smu->msg_irq) |
597 | printk(KERN_ERR "smu: failed to map irq for node %s\n", | 597 | printk(KERN_ERR "smu: failed to map irq for node %s\n", |
598 | smu->msg_node->full_name); | 598 | smu->msg_node->full_name); |
599 | } | 599 | } |
@@ -602,23 +602,23 @@ static int smu_late_init(void) | |||
602 | * Try to request the interrupts | 602 | * Try to request the interrupts |
603 | */ | 603 | */ |
604 | 604 | ||
605 | if (smu->db_irq != NO_IRQ) { | 605 | if (smu->db_irq) { |
606 | if (request_irq(smu->db_irq, smu_db_intr, | 606 | if (request_irq(smu->db_irq, smu_db_intr, |
607 | IRQF_SHARED, "SMU doorbell", smu) < 0) { | 607 | IRQF_SHARED, "SMU doorbell", smu) < 0) { |
608 | printk(KERN_WARNING "SMU: can't " | 608 | printk(KERN_WARNING "SMU: can't " |
609 | "request interrupt %d\n", | 609 | "request interrupt %d\n", |
610 | smu->db_irq); | 610 | smu->db_irq); |
611 | smu->db_irq = NO_IRQ; | 611 | smu->db_irq = 0; |
612 | } | 612 | } |
613 | } | 613 | } |
614 | 614 | ||
615 | if (smu->msg_irq != NO_IRQ) { | 615 | if (smu->msg_irq) { |
616 | if (request_irq(smu->msg_irq, smu_msg_intr, | 616 | if (request_irq(smu->msg_irq, smu_msg_intr, |
617 | IRQF_SHARED, "SMU message", smu) < 0) { | 617 | IRQF_SHARED, "SMU message", smu) < 0) { |
618 | printk(KERN_WARNING "SMU: can't " | 618 | printk(KERN_WARNING "SMU: can't " |
619 | "request interrupt %d\n", | 619 | "request interrupt %d\n", |
620 | smu->msg_irq); | 620 | smu->msg_irq); |
621 | smu->msg_irq = NO_IRQ; | 621 | smu->msg_irq = 0; |
622 | } | 622 | } |
623 | } | 623 | } |
624 | 624 | ||