sata_fsl: fix error handling of irq_of_parse_and_map
authorDmitry Torokhov <dtor@chromium.org>
Fri, 14 Nov 2014 21:39:05 +0000 (13:39 -0800)
committerTejun Heo <tj@kernel.org>
Tue, 2 Dec 2014 17:52:17 +0000 (12:52 -0500)
irq_of_parse_and_map() returns 0 on error (the result is unsigned int),
so testing for negative result never works.

Signed-off-by: Dmitry Torokhov <dtor@chromium.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: stable@vger.kernel.org
drivers/ata/sata_fsl.c

index 07bc7e4dbd04b836722d42b1051dc3da33f99a9d..65071591b143f5b0914b3ba37c8a0ac8f16f01fb 100644 (file)
@@ -1488,7 +1488,7 @@ static int sata_fsl_probe(struct platform_device *ofdev)
        host_priv->csr_base = csr_base;
 
        irq = irq_of_parse_and_map(ofdev->dev.of_node, 0);
-       if (irq < 0) {
+       if (!irq) {
                dev_err(&ofdev->dev, "invalid irq from platform\n");
                goto error_exit_with_cleanup;
        }