msm: camera: common: Enable flash operation at EOF
Flash operation is currently being done at EPOCH timeframe. In order to support flash operation at EPOCH extra frame needs to skip to avoid partial lit on previous request. Moving flash operation to EOF saves one frame and also give more stability to perform the operation with higher stablility with removing partial lit. This change gives flash hardware extra time to perform the operation for turn on/off the flash hardware. CRs-Fixed: 2795719 Change-Id: I08b82527006d8a9c81c5a5be0768705051cbd3f1 Signed-off-by: Jigarkumar Zala <jzala@codeaurora.org> Signed-off-by: Depeng Shao <depengs@codeaurora.org>
This commit is contained in:
@@ -558,6 +558,8 @@ static void __cam_req_mgr_flush_req_slot(
|
||||
in_q->rd_idx = 0;
|
||||
link->trigger_cnt[0] = 0;
|
||||
link->trigger_cnt[1] = 0;
|
||||
link->trigger_mask = 0;
|
||||
link->subscribe_event &= ~CAM_TRIGGER_POINT_EOF;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -811,12 +813,6 @@ static int __cam_req_mgr_send_req(struct cam_req_mgr_core_link *link,
|
||||
continue;
|
||||
}
|
||||
|
||||
if (slot->ops.apply_at_eof && slot->ops.skip_next_frame) {
|
||||
CAM_ERR(CAM_CRM,
|
||||
"Both EOF and SOF trigger is not supported");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (dev->dev_hdl != slot->ops.dev_hdl) {
|
||||
CAM_DBG(CAM_CRM,
|
||||
"Dev_hdl : %d Not matched:: Expected dev_hdl: %d",
|
||||
@@ -2586,8 +2582,7 @@ int cam_req_mgr_process_add_req(void *priv, void *data)
|
||||
(add_req->skip_before_applying & 0xFF));
|
||||
}
|
||||
|
||||
/* Used when Precise Flash is enabled */
|
||||
if ((add_req->trigger_eof) && (!add_req->skip_before_applying)) {
|
||||
if (add_req->trigger_eof) {
|
||||
slot->ops.apply_at_eof = true;
|
||||
slot->ops.dev_hdl = add_req->dev_hdl;
|
||||
CAM_DBG(CAM_REQ,
|
||||
|
Reference in New Issue
Block a user