浏览代码

Merge "msm: camera: reqmgr: Only do self-correction at SOF" into camera-kernel.lnx.5.0

Haritha Chintalapati 4 年之前
父节点
当前提交
facbe0251d
共有 1 个文件被更改,包括 6 次插入3 次删除
  1. 6 3
      drivers/cam_req_mgr/cam_req_mgr_core.c

+ 6 - 3
drivers/cam_req_mgr/cam_req_mgr_core.c

@@ -1342,7 +1342,8 @@ static int __cam_req_mgr_check_sync_for_mslave(
 static int __cam_req_mgr_check_sync_req_is_ready(
 static int __cam_req_mgr_check_sync_req_is_ready(
 	struct cam_req_mgr_core_link *link,
 	struct cam_req_mgr_core_link *link,
 	struct cam_req_mgr_core_link *sync_link,
 	struct cam_req_mgr_core_link *sync_link,
-	struct cam_req_mgr_slot *slot)
+	struct cam_req_mgr_slot *slot,
+	uint32_t trigger)
 {
 {
 	struct cam_req_mgr_slot *sync_rd_slot = NULL;
 	struct cam_req_mgr_slot *sync_rd_slot = NULL;
 	int64_t req_id = 0, sync_req_id = 0;
 	int64_t req_id = 0, sync_req_id = 0;
@@ -1516,7 +1517,8 @@ static int __cam_req_mgr_check_sync_req_is_ready(
 	 */
 	 */
 	master_slave_diff = sync_frame_duration;
 	master_slave_diff = sync_frame_duration;
 	do_div(master_slave_diff, 5);
 	do_div(master_slave_diff, 5);
-	if ((sync_link->sof_timestamp > 0) &&
+	if ((trigger == CAM_TRIGGER_POINT_SOF) &&
+		(sync_link->sof_timestamp > 0) &&
 		(sof_timestamp_delta < master_slave_diff) &&
 		(sof_timestamp_delta < master_slave_diff) &&
 		(sync_rd_slot->sync_mode == CAM_REQ_MGR_SYNC_MODE_SYNC)) {
 		(sync_rd_slot->sync_mode == CAM_REQ_MGR_SYNC_MODE_SYNC)) {
 
 
@@ -1577,7 +1579,8 @@ static int __cam_req_mgr_check_multi_sync_link_ready(
 			}
 			}
 			if (link->max_delay == link->sync_link[i]->max_delay) {
 			if (link->max_delay == link->sync_link[i]->max_delay) {
 				rc = __cam_req_mgr_check_sync_req_is_ready(
 				rc = __cam_req_mgr_check_sync_req_is_ready(
-						link, link->sync_link[i], slot);
+						link, link->sync_link[i],
+						slot, trigger);
 				if (rc < 0) {
 				if (rc < 0) {
 					CAM_DBG(CAM_CRM, "link %x not ready",
 					CAM_DBG(CAM_CRM, "link %x not ready",
 						link->link_hdl);
 						link->link_hdl);