diff options
author | Anton Vorontsov <avorontsov@ru.mvista.com> | 2008-10-06 03:26:54 -0400 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2008-10-10 00:55:17 -0400 |
commit | 4538d0ca71b4f8991c4c0f433d7d17805738326e (patch) | |
tree | 2d7e4ea97a8a19280514375c59612d20a841c848 /drivers/ata/pata_of_platform.c | |
parent | 9fd3f88cb67ac51bd5face8441472b91e042be67 (diff) |
powerpc: Fix no interrupt handling in pata_of_platform
When no interrupt is specified the pata_of_platform fills the irq_res
resource with -1, which is wrong to do for two reasons:
1. By definition, 'no irq' should be IRQ 0, not some negative integer;
2. pata_platform checks for irq_res.start > 0, but since irq_res.start
is unsigned type, the check will be true for `-1'.
Reported-by: Steven A. Falco <sfalco@harris.com>
Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'drivers/ata/pata_of_platform.c')
-rw-r--r-- | drivers/ata/pata_of_platform.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/ata/pata_of_platform.c b/drivers/ata/pata_of_platform.c index 408da30594c4..1f18ad9e4fe1 100644 --- a/drivers/ata/pata_of_platform.c +++ b/drivers/ata/pata_of_platform.c | |||
@@ -52,7 +52,7 @@ static int __devinit pata_of_platform_probe(struct of_device *ofdev, | |||
52 | 52 | ||
53 | ret = of_irq_to_resource(dn, 0, &irq_res); | 53 | ret = of_irq_to_resource(dn, 0, &irq_res); |
54 | if (ret == NO_IRQ) | 54 | if (ret == NO_IRQ) |
55 | irq_res.start = irq_res.end = -1; | 55 | irq_res.start = irq_res.end = 0; |
56 | else | 56 | else |
57 | irq_res.flags = 0; | 57 | irq_res.flags = 0; |
58 | 58 | ||