summaryrefslogtreecommitdiffstats
path: root/camera/exynos_camera.c
diff options
context:
space:
mode:
Diffstat (limited to 'camera/exynos_camera.c')
-rw-r--r--camera/exynos_camera.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/camera/exynos_camera.c b/camera/exynos_camera.c
index 7e551dc..6ef2dc6 100644
--- a/camera/exynos_camera.c
+++ b/camera/exynos_camera.c
@@ -1086,9 +1086,11 @@ int exynos_camera_params_apply(struct exynos_camera *exynos_camera, int force)
}
}
- rc = exynos_v4l2_s_ctrl(exynos_camera, 0, V4L2_CID_CAMERA_FOCUS_MODE, focus_mode);
- if (rc < 0)
- ALOGE("%s: Unable to set focus mode", __func__);
+ if (focus_mode != exynos_camera->focus_mode || force) {
+ rc = exynos_v4l2_s_ctrl(exynos_camera, 0, V4L2_CID_CAMERA_FOCUS_MODE, focus_mode);
+ if (rc < 0)
+ ALOGE("%s: Unable to set focus mode", __func__);
+ }
exynos_camera->focus_mode = focus_mode;
sprintf(exynos_camera->raw_focus_mode, "%s", focus_mode_string);