[media] tvp5150: use sd internal ops .registered instead .registered_async
authorJavier Martinez Canillas <javier@osg.samsung.com>
Thu, 11 Aug 2016 16:28:15 +0000 (13:28 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Wed, 24 Aug 2016 19:49:18 +0000 (16:49 -0300)
The driver is using the struct v4l2_subdev_core_ops .registered_async
callback to register the connector entities and create the pad links
after the subdev entity has been registered with the media device.

But the .registered_async callback isn't needed since the v4l2 core
already calls the struct v4l2_subdev_internal_ops .registered callback
in v4l2_device_register_subdev(), after media_device_register_entity().

So, use the .registered() callback instead of the .registered_async()
that is going to be removed in a following patch since isn't needed.

Suggested-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Javier Martinez Canillas <javier@osg.samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/i2c/tvp5150.c

index b7648fda519ca7fdb7b9977450a68a51ad040231..4740da39d6988a19574d8f040bb20038ab4b6f67 100644 (file)
@@ -1171,7 +1171,7 @@ static int tvp5150_g_tuner(struct v4l2_subdev *sd, struct v4l2_tuner *vt)
        return 0;
 }
 
-static int tvp5150_registered_async(struct v4l2_subdev *sd)
+static int tvp5150_registered(struct v4l2_subdev *sd)
 {
 #ifdef CONFIG_MEDIA_CONTROLLER
        struct tvp5150 *decoder = to_tvp5150(sd);
@@ -1220,7 +1220,6 @@ static const struct v4l2_subdev_core_ops tvp5150_core_ops = {
        .g_register = tvp5150_g_register,
        .s_register = tvp5150_s_register,
 #endif
-       .registered_async = tvp5150_registered_async,
 };
 
 static const struct v4l2_subdev_tuner_ops tvp5150_tuner_ops = {
@@ -1258,6 +1257,10 @@ static const struct v4l2_subdev_ops tvp5150_ops = {
        .pad = &tvp5150_pad_ops,
 };
 
+static const struct v4l2_subdev_internal_ops tvp5150_internal_ops = {
+       .registered = tvp5150_registered,
+};
+
 
 /****************************************************************************
                        I2C Client & Driver
@@ -1471,6 +1474,7 @@ static int tvp5150_probe(struct i2c_client *c,
        }
 
        v4l2_i2c_subdev_init(sd, c, &tvp5150_ops);
+       sd->internal_ops = &tvp5150_internal_ops;
        sd->flags |= V4L2_SUBDEV_FL_HAS_DEVNODE;
 
 #if defined(CONFIG_MEDIA_CONTROLLER)