media: mt9m111: fix fw-node refactoring
authorRobert Jarzmik <robert.jarzmik@free.fr>
Mon, 3 Jun 2019 20:01:55 +0000 (16:01 -0400)
committerMauro Carvalho Chehab <mchehab+samsung@kernel.org>
Mon, 24 Jun 2019 15:19:43 +0000 (11:19 -0400)
In the patch refactoring the fw-node, the mt9m111 was broken for all
platform_data based platforms, which were the first aim of this
driver. Only the devicetree platform are still functional, probably
because the testing was done on these.

The result is that -EINVAL is systematically return for such platforms,
what this patch fixes.

[Sakari Ailus: Rework this to resolve a merge conflict and use dev_fwnode]

Fixes: 98480d65c48c ("media: mt9m111: allow to setup pixclk polarity")
Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org>
drivers/media/i2c/mt9m111.c

index bd3a51c3b08148513538575a391d4ba61c4389fc..d10fe3712036fa23098266d40df5a08c3841ea9f 100644 (file)
@@ -1263,9 +1263,11 @@ static int mt9m111_probe(struct i2c_client *client,
        if (!mt9m111)
                return -ENOMEM;
 
-       ret = mt9m111_probe_fw(client, mt9m111);
-       if (ret)
-               return ret;
+       if (dev_fwnode(&client->dev)) {
+               ret = mt9m111_probe_fw(client, mt9m111);
+               if (ret)
+                       return ret;
+       }
 
        mt9m111->clk = v4l2_clk_get(&client->dev, "mclk");
        if (IS_ERR(mt9m111->clk))