msm: camera: isp: Set RDI only context flag for CSID resource node

This commit fixes regression in RDI only usecase caused by 'commit
afc2f5cb ("msm: camera: isp: Change Start flow of CSID paths")'.

CRs-Fixed: 2846451
Change-Id: I9be699ed2045b83c2657ce5fd879e89fe64c909a
Signed-off-by: Anand Ravi <ananravi@codeaurora.org>
This commit is contained in:
Anand Ravi
2021-05-06 17:51:53 -07:00
parent bd5db9e311
commit 83738d1ac2

View File

@@ -640,7 +640,8 @@ err:
}
static int cam_ife_mgr_csid_start_hw(
struct cam_ife_hw_mgr_ctx *ctx)
struct cam_ife_hw_mgr_ctx *ctx,
uint32_t primary_rdi_csid_res)
{
struct cam_isp_hw_mgr_res *hw_mgr_res;
struct cam_isp_resource_node *isp_res;
@@ -651,19 +652,22 @@ static int cam_ife_mgr_csid_start_hw(
int j;
for (j = ctx->num_base - 1 ; j >= 0; j--) {
cnt = 0;
if (ctx->base[j].hw_type != CAM_ISP_HW_TYPE_CSID)
continue;
list_for_each_entry(hw_mgr_res, &ctx->res_list_ife_csid, list) {
isp_res = hw_mgr_res->hw_res[ctx->base[j].split_id];
if (!isp_res || ctx->base[j].idx != isp_res->hw_intf->hw_idx)
continue;
if (primary_rdi_csid_res == hw_mgr_res->res_id) {
hw_mgr_res->hw_res[0]->rdi_only_ctx =
ctx->flags.is_rdi_only_context;
}
CAM_DBG(CAM_ISP, "csid[%u] res:%s res_id %d cnt %u",
isp_res->hw_intf->hw_idx,
isp_res->res_name, isp_res->res_id, cnt);
@@ -6155,7 +6159,7 @@ static int cam_ife_mgr_restart_hw(void *start_hw_args)
CAM_DBG(CAM_ISP, "START CSID HW ... in ctx id:%d", ctx->ctx_index);
/* Start the IFE CSID HW devices */
cam_ife_mgr_csid_start_hw(ctx);
cam_ife_mgr_csid_start_hw(ctx, CAM_IFE_PIX_PATH_RES_MAX);
/* Start IFE root node: do nothing */
CAM_DBG(CAM_ISP, "Exit...(success)");
@@ -6488,7 +6492,7 @@ start_only:
CAM_DBG(CAM_ISP, "START CSID HW ... in ctx id:%d",
ctx->ctx_index);
/* Start the IFE CSID HW devices */
cam_ife_mgr_csid_start_hw(ctx);
cam_ife_mgr_csid_start_hw(ctx, primary_rdi_csid_res);
if (ctx->flags.is_tpg) {
CAM_DBG(CAM_ISP, "START TPG HW ... in ctx id:%d",