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);
        .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 = {
        .pad = &tvp5150_pad_ops,
 };
 
+static const struct v4l2_subdev_internal_ops tvp5150_internal_ops = {
+       .registered = tvp5150_registered,
+};
+
 
 /****************************************************************************
                        I2C Client & Driver
        }
 
        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)