embedded_end = 0;
        }
 
+       sensor->image_start = image_start;
+
        dev_dbg(&client->dev, "embedded data from lines %d to %d\n",
                embedded_start, embedded_end);
        dev_dbg(&client->dev, "image data starts at line %d\n", image_start);
        return 0;
 }
 
+static int smiapp_get_skip_top_lines(struct v4l2_subdev *subdev, u32 *lines)
+{
+       struct smiapp_sensor *sensor = to_smiapp_sensor(subdev);
+
+       *lines = sensor->image_start;
+
+       return 0;
+}
+
 /* -----------------------------------------------------------------------------
  * sysfs attributes
  */
 
 static const struct v4l2_subdev_sensor_ops smiapp_sensor_ops = {
        .g_skip_frames = smiapp_get_skip_frames,
+       .g_skip_top_lines = smiapp_get_skip_top_lines,
 };
 
 static const struct v4l2_subdev_ops smiapp_ops = {