msm: camera: ope: Clear comp events before each request

If there is a stale entry of any event in the CDM,
it will end the wait of same event in next request.
So, clearing the comp events before each request.

CRs-Fixed: 2611231
Change-Id: I252ee5edaea1cda34dc48343dd6bc865b490e977
Signed-off-by: Rishabh Jain <risjai@codeaurora.org>
这个提交包含在:
Rishabh Jain
2020-02-07 15:13:18 +05:30
提交者 Gerrit - the friendly Code Review server
父节点 6bc220f0a7
当前提交 704dc07b7b
修改 3 个文件,包含 53 行新增0 行删除

查看文件

@@ -1276,6 +1276,9 @@ static int cam_ope_dev_create_kmd_buf_nrt(struct cam_ope_hw_mgr *hw_mgr,
cdm_ops = ctx_data->ope_cdm.cdm_ops;
kmd_buf = cdm_ops->cdm_write_clear_comp_event(kmd_buf,
OPE_WAIT_COMP_IDLE|OPE_WAIT_COMP_RUP, 0x0);
/* Frame 0 DB */
kmd_buf = ope_create_frame_cmd(hw_mgr,
ctx_data, req_idx,
@@ -1358,6 +1361,8 @@ static int cam_ope_dev_create_kmd_buf_batch(struct cam_ope_hw_mgr *hw_mgr,
(kmd_buf_offset / sizeof(len));
cdm_kmd_start_addr = kmd_buf;
cdm_ops = ctx_data->ope_cdm.cdm_ops;
kmd_buf = cdm_ops->cdm_write_clear_comp_event(kmd_buf,
OPE_WAIT_COMP_IDLE|OPE_WAIT_COMP_RUP, 0x0);
for (i = 0; i < frm_proc->batch_size; i++) {
wr_cdm_info =
@@ -1494,6 +1499,8 @@ static int cam_ope_dev_create_kmd_buf(struct cam_ope_hw_mgr *hw_mgr,
CAM_DBG(CAM_OPE, "kmd_buf:%x req_idx:%d req_id:%lld offset:%d",
kmd_buf, req_idx, ope_request->request_id, kmd_buf_offset);
kmd_buf = cdm_ops->cdm_write_clear_comp_event(kmd_buf,
OPE_WAIT_COMP_IDLE|OPE_WAIT_COMP_RUP, 0x0);
/* Frame 0 DB */
kmd_buf = ope_create_frame_cmd(hw_mgr,
ctx_data, req_idx,