]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
[media] smiapp: Initialise media entity after sensor init
authorSakari Ailus <sakari.ailus@linux.intel.com>
Mon, 5 Sep 2016 13:04:52 +0000 (10:04 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Fri, 21 Oct 2016 16:20:01 +0000 (14:20 -0200)
This allows determining the number of pads in the entity based on the
sensor.

Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Reviewed-by: Sebastian Reichel <sre@kernel.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/smiapp/smiapp-core.c

index 2090b7f2b9aa726f60d6ab0822c2c6ef71fbb2ce..4f9750324150027d6f743f3eaf7ac1c6cf5d88dc 100644 (file)
@@ -3058,12 +3058,7 @@ static int smiapp_probe(struct i2c_client *client,
        sensor->src->sd.internal_ops = &smiapp_internal_src_ops;
        sensor->src->sd.flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
        sensor->src->sensor = sensor;
-
        sensor->src->pads[0].flags = MEDIA_PAD_FL_SOURCE;
-       rval = media_entity_pads_init(&sensor->src->sd.entity, 2,
-                                sensor->src->pads);
-       if (rval < 0)
-               return rval;
 
        if (client->dev.of_node) {
                rval = smiapp_init(sensor);
@@ -3071,6 +3066,11 @@ static int smiapp_probe(struct i2c_client *client,
                        goto out_media_entity_cleanup;
        }
 
+       rval = media_entity_pads_init(&sensor->src->sd.entity, 2,
+                                sensor->src->pads);
+       if (rval < 0)
+               goto out_media_entity_cleanup;
+
        rval = v4l2_async_register_subdev(&sensor->src->sd);
        if (rval < 0)
                goto out_media_entity_cleanup;