Merge tag 'iio-for-v4.2a' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23...
[firefly-linux-kernel-4.4.55.git] / drivers / media / platform / vsp1 / vsp1_hsit.c
index 0bc0471746c922f644f5ccc8756335c67ff48013..8ffb817ae5255809498f0716a6d91604ad31880c 100644 (file)
@@ -55,7 +55,7 @@ static int hsit_s_stream(struct v4l2_subdev *subdev, int enable)
  */
 
 static int hsit_enum_mbus_code(struct v4l2_subdev *subdev,
-                              struct v4l2_subdev_fh *fh,
+                              struct v4l2_subdev_pad_config *cfg,
                               struct v4l2_subdev_mbus_code_enum *code)
 {
        struct vsp1_hsit *hsit = to_hsit(subdev);
@@ -73,12 +73,14 @@ static int hsit_enum_mbus_code(struct v4l2_subdev *subdev,
 }
 
 static int hsit_enum_frame_size(struct v4l2_subdev *subdev,
-                               struct v4l2_subdev_fh *fh,
+                               struct v4l2_subdev_pad_config *cfg,
                                struct v4l2_subdev_frame_size_enum *fse)
 {
+       struct vsp1_hsit *hsit = to_hsit(subdev);
        struct v4l2_mbus_framefmt *format;
 
-       format = v4l2_subdev_get_try_format(fh, fse->pad);
+       format = vsp1_entity_get_pad_format(&hsit->entity, cfg, fse->pad,
+                                           fse->which);
 
        if (fse->index || fse->code != format->code)
                return -EINVAL;
@@ -102,25 +104,25 @@ static int hsit_enum_frame_size(struct v4l2_subdev *subdev,
 }
 
 static int hsit_get_format(struct v4l2_subdev *subdev,
-                          struct v4l2_subdev_fh *fh,
+                          struct v4l2_subdev_pad_config *cfg,
                           struct v4l2_subdev_format *fmt)
 {
        struct vsp1_hsit *hsit = to_hsit(subdev);
 
-       fmt->format = *vsp1_entity_get_pad_format(&hsit->entity, fh, fmt->pad,
+       fmt->format = *vsp1_entity_get_pad_format(&hsit->entity, cfg, fmt->pad,
                                                  fmt->which);
 
        return 0;
 }
 
 static int hsit_set_format(struct v4l2_subdev *subdev,
-                          struct v4l2_subdev_fh *fh,
+                          struct v4l2_subdev_pad_config *cfg,
                           struct v4l2_subdev_format *fmt)
 {
        struct vsp1_hsit *hsit = to_hsit(subdev);
        struct v4l2_mbus_framefmt *format;
 
-       format = vsp1_entity_get_pad_format(&hsit->entity, fh, fmt->pad,
+       format = vsp1_entity_get_pad_format(&hsit->entity, cfg, fmt->pad,
                                            fmt->which);
 
        if (fmt->pad == HSIT_PAD_SOURCE) {
@@ -143,7 +145,7 @@ static int hsit_set_format(struct v4l2_subdev *subdev,
        fmt->format = *format;
 
        /* Propagate the format to the source pad. */
-       format = vsp1_entity_get_pad_format(&hsit->entity, fh, HSIT_PAD_SOURCE,
+       format = vsp1_entity_get_pad_format(&hsit->entity, cfg, HSIT_PAD_SOURCE,
                                            fmt->which);
        *format = fmt->format;
        format->code = hsit->inverse ? MEDIA_BUS_FMT_ARGB8888_1X32