atomisp: set the digital zoom in atomisp_set_fmt()
authorZhi Jin <zhi.jin@intel.com>
Thu, 21 Jun 2012 05:41:40 +0000 (13:41 +0800)
committerbuildbot <buildbot@intel.com>
Mon, 25 Jun 2012 06:41:19 +0000 (23:41 -0700)
BZ: 43056

Zoom must be recalculated by calling atomisp_digital_zoom()
when switching resolution.

Originally from: Zhi Jin <zhi.jin@intel.com>
Change-Id: Idbf5568965cb1ff20e0b255f269b627b4afbc2b3
Signed-off-by: Tuukka Toivonen <tuukka.toivonen@intel.com>
Reviewed-on: http://android.intel.com:8080/53557
Reviewed-by: Kontola, Kalervo <kalervo.kontola@intel.com>
Reviewed-by: Tuominen, TeemuX <teemux.tuominen@intel.com>
Reviewed-by: Koski, Anttu <anttu.koski@intel.com>
Tested-by: Koski, Anttu <anttu.koski@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
drivers/media/video/atomisp/atomisp_cmd.c

index bd9a926..d339019 100644 (file)
@@ -3289,7 +3289,7 @@ int atomisp_set_fmt(struct video_device *vdev, struct v4l2_format *f)
        unsigned int padding_w = pad_w,
                     padding_h = pad_h;
        struct v4l2_streamparm sensor_parm;
-       int zoom = 0;
+       __s32 zoom = 0;
        int ret;
 
        if ((f->type != V4L2_BUF_TYPE_VIDEO_CAPTURE) &&
@@ -3297,6 +3297,7 @@ int atomisp_set_fmt(struct video_device *vdev, struct v4l2_format *f)
                v4l2_err(&atomisp_dev, "Wrong v4l2 buf type\n");
                return -EINVAL;
        }
+       atomisp_digital_zoom(isp, 0, &zoom);
 
        format_bridge = get_atomisp_format_bridge(pixelformat);
        if (format_bridge == NULL)