[COMMON] fimc-is2: do not use fast AF trigger when Precapture trigger
[GitHub/MotorolaMobilityLLC/kernel-slsi.git] / drivers / media / platform / exynos / fimc-is2 / fimc-is-groupmgr.c
index 097c3f9b3e8d9574bdb86ff5b42c04e32913e407..e979aba99a48d76bacf88e82c88b6c6c5807e9a1 100644 (file)
@@ -2527,13 +2527,15 @@ int fimc_is_group_buffer_queue(struct fimc_is_groupmgr *groupmgr,
                 * it need to copy "afMode & afTrigger" in queued frame
                 * at only AF mode == CONTINUOUS_PICTURE or CONTINUOUS_VIDEO
                 *         AF trigger == START
+                *         PreCaptureTrigger != START
                 */
                if (test_bit(FIMC_IS_GROUP_OTF_INPUT, &group->state)) {
                        struct fimc_is_frame *prev;
 
-                       if ((frame->shot->ctl.aa.afMode == AA_AFMODE_CONTINUOUS_VIDEO ||
-                               frame->shot->ctl.aa.afMode == AA_AFMODE_CONTINUOUS_PICTURE)
-                               && frame->shot->ctl.aa.afTrigger == AA_AF_TRIGGER_START) {
+                       if (((frame->shot->ctl.aa.afMode == AA_AFMODE_CONTINUOUS_VIDEO ||
+                               frame->shot->ctl.aa.afMode == AA_AFMODE_CONTINUOUS_PICTURE) &&
+                               frame->shot->ctl.aa.afTrigger == AA_AF_TRIGGER_START) &&
+                               frame->shot->ctl.aa.aePrecaptureTrigger != AA_AE_PRECAPTURE_TRIGGER_START) {
 
                                list_for_each_entry_reverse(prev, &framemgr->queued_list[FS_REQUEST], list) {
                                        prev->shot->ctl.aa.afMode = frame->shot->ctl.aa.afMode;