فهرست منبع

msm: camera: reqmgr: Wait for the streaming of sync link

We should make sure the sync link has streamed on
when current req bigger than or equal to the next
req of sync link.

CRs-Fixed: 3305718
Change-Id: I571d0d7ce4ced723c8a4885a475e555f667fd923
Signed-off-by: Depeng Shao <[email protected]>
Depeng Shao 2 سال پیش
والد
کامیت
b3545d7f20
1فایلهای تغییر یافته به همراه4 افزوده شده و 1 حذف شده
  1. 4 1
      drivers/cam_req_mgr/cam_req_mgr_core.c

+ 4 - 1
drivers/cam_req_mgr/cam_req_mgr_core.c

@@ -1593,7 +1593,8 @@ static int __cam_req_mgr_check_sync_req_is_ready(
 		"link_hdl %x sync link_hdl %x req %lld",
 		link->link_hdl, sync_link->link_hdl, req_id);
 
-	if (sync_link->initial_skip) {
+	if ((sync_link->initial_skip) &&
+		(req_id >= sync_req_id)) {
 		link->initial_skip = false;
 		CAM_DBG(CAM_CRM,
 			"sync link %x not streamed on",
@@ -5134,6 +5135,8 @@ int cam_req_mgr_link_control(struct cam_req_mgr_link_control *control)
 					link->link_hdl);
 				rc = -EFAULT;
 			}
+			/* Wait for the streaming of sync link */
+			link->initial_skip = true;
 			/* Pause the timer before sensor stream on */
 			link->watchdog->pause_timer = true;
 			/* notify nodes */