irqchip: vf610: Fix of_io_request_and_map error check
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Sat, 2 May 2015 15:03:26 +0000 (17:03 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 5 May 2015 08:45:59 +0000 (10:45 +0200)
of_io_request_and map returns an error pointer, but the current code assumes
that on error the returned pointer will be NULL.

Obviously, that makes the check completely useless. Change the test to actually
check for the proper error code.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Cc: Jason Cooper <jason@lakedaemon.net>
Link: http://lkml.kernel.org/r/1430579006-32702-7-git-send-email-maxime.ripard@free-electrons.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
drivers/irqchip/irq-vf610-mscm-ir.c

index 9521057..d0f940a 100644 (file)
@@ -174,10 +174,9 @@ static int __init vf610_mscm_ir_of_init(struct device_node *node,
                return -ENOMEM;
 
        mscm_ir_data->mscm_ir_base = of_io_request_and_map(node, 0, "mscm-ir");
-
-       if (!mscm_ir_data->mscm_ir_base) {
+       if (IS_ERR(mscm_ir_data->mscm_ir_base)) {
                pr_err("vf610_mscm_ir: unable to map mscm register\n");
-               ret = -ENOMEM;
+               ret = PTR_ERR(mscm_ir_data->mscm_ir_base);
                goto out_free;
        }