remoteproc: st: fix check of syscon_regmap_lookup_by_phandle() return value
authorVladimir Zapolskiy <vz@mleia.com>
Sat, 19 Mar 2016 13:31:10 +0000 (15:31 +0200)
committerBjorn Andersson <bjorn.andersson@linaro.org>
Mon, 28 Mar 2016 23:19:00 +0000 (16:19 -0700)
syscon_regmap_lookup_by_phandle() returns either a valid pointer to
struct regmap or ERR_PTR() error value, check for NULL is invalid and
on error path may lead to oops, the change corrects the check.

Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
Acked-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
drivers/remoteproc/st_remoteproc.c

index 6bb04d4..6f056ca 100644 (file)
@@ -189,9 +189,9 @@ static int st_rproc_parse_dt(struct platform_device *pdev)
        }
 
        ddata->boot_base = syscon_regmap_lookup_by_phandle(np, "st,syscfg");
-       if (!ddata->boot_base) {
+       if (IS_ERR(ddata->boot_base)) {
                dev_err(dev, "Boot base not found\n");
-               return -EINVAL;
+               return PTR_ERR(ddata->boot_base);
        }
 
        err = of_property_read_u32_index(np, "st,syscfg", 1,