Merge "msm: camera: isp: Get hint for FS mode from UMD" into camera-kernel.lnx.5.0

This commit is contained in:
Savita Patted
2021-02-24 18:57:13 -08:00
committed by Gerrit - the friendly Code Review server
3 changed files with 12 additions and 5 deletions

View File

@@ -3402,8 +3402,15 @@ static int cam_ife_mgr_check_and_update_fe_v2(
((in_port->sfe_in_path_type & 0xFFFF) == CAM_ISP_SFE_IN_RD_1) || ((in_port->sfe_in_path_type & 0xFFFF) == CAM_ISP_SFE_IN_RD_1) ||
((in_port->sfe_in_path_type & 0xFFFF) == CAM_ISP_SFE_IN_RD_2)) { ((in_port->sfe_in_path_type & 0xFFFF) == CAM_ISP_SFE_IN_RD_2)) {
ife_ctx->is_fe_enabled = true; ife_ctx->is_fe_enabled = true;
/* Check for SFE FS mode - SFE PP bypass */
if (in_port->feature_flag & CAM_ISP_SFE_FS_MODE_EN)
ife_ctx->ctx_config |= CAM_IFE_CTX_CFG_SFE_FS_MODE;
/* Check for offline */
if (in_port->offline_mode) if (in_port->offline_mode)
ife_ctx->is_offline = true; ife_ctx->is_offline = true;
break; break;
} }
@@ -4607,11 +4614,9 @@ static int cam_ife_mgr_acquire_hw(void *hw_mgr_priv, void *acquire_hw_args)
CAM_IFE_CTX_CONSUME_ADDR_EN; CAM_IFE_CTX_CONSUME_ADDR_EN;
if ((ife_ctx->ctx_type == CAM_IFE_CTX_TYPE_SFE) && if ((ife_ctx->ctx_type == CAM_IFE_CTX_TYPE_SFE) &&
ife_ctx->is_fe_enabled) { (ife_ctx->is_fe_enabled) && (!ife_ctx->is_offline))
ife_ctx->ctx_config |= CAM_IFE_CTX_CFG_SFE_FE_MODE;
acquire_args->op_flags |= acquire_args->op_flags |=
CAM_IFE_CTX_APPLY_DEFAULT_CFG; CAM_IFE_CTX_APPLY_DEFAULT_CFG;
}
acquire_args->ctxt_to_hw_map = ife_ctx; acquire_args->ctxt_to_hw_map = ife_ctx;
if (ife_ctx->ctx_type == CAM_IFE_CTX_TYPE_CUSTOM) if (ife_ctx->ctx_type == CAM_IFE_CTX_TYPE_CUSTOM)
@@ -6033,7 +6038,8 @@ static int cam_ife_mgr_start_hw(void *hw_mgr_priv, void *start_hw_args)
CAM_IFE_CSID_INPUT_CORE_IFE; CAM_IFE_CSID_INPUT_CORE_IFE;
} }
if (ctx->is_offline) if ((ctx->is_offline) ||
(ctx->ctx_config & CAM_IFE_CTX_CFG_SFE_FS_MODE))
csid_top_args.is_sfe_offline = true; csid_top_args.is_sfe_offline = true;
hw_intf = hw_mgr_res->hw_res[i]->hw_intf; hw_intf = hw_mgr_res->hw_res[i]->hw_intf;

View File

@@ -36,7 +36,7 @@ enum cam_ife_ctx_master_type {
/* IFE_HW_MGR ctx config */ /* IFE_HW_MGR ctx config */
#define CAM_IFE_CTX_CFG_FRAME_HEADER_TS BIT(0) #define CAM_IFE_CTX_CFG_FRAME_HEADER_TS BIT(0)
#define CAM_IFE_CTX_CFG_SW_SYNC_ON BIT(1) #define CAM_IFE_CTX_CFG_SW_SYNC_ON BIT(1)
#define CAM_IFE_CTX_CFG_SFE_FE_MODE BIT(2) #define CAM_IFE_CTX_CFG_SFE_FS_MODE BIT(2)
#define CAM_IFE_CTX_CFG_DYNAMIC_SWITCH_ON BIT(3) #define CAM_IFE_CTX_CFG_DYNAMIC_SWITCH_ON BIT(3)
#define CAM_IFE_UBWC_COMP_EN BIT(1) #define CAM_IFE_UBWC_COMP_EN BIT(1)

View File

@@ -170,6 +170,7 @@
#define CAM_ISP_DYNAMIC_SENOR_SWITCH_EN BIT(2) #define CAM_ISP_DYNAMIC_SENOR_SWITCH_EN BIT(2)
#define CAM_ISP_SFE_BINNED_EPOCH_CFG_ENABLE BIT(3) #define CAM_ISP_SFE_BINNED_EPOCH_CFG_ENABLE BIT(3)
#define CAM_ISP_EPD_SUPPORT BIT(4) #define CAM_ISP_EPD_SUPPORT BIT(4)
#define CAM_ISP_SFE_FS_MODE_EN BIT(5)
/* ISP core cfg flag params */ /* ISP core cfg flag params */
#define CAM_ISP_PARAM_CORE_CFG_HDR_MUX_SEL BIT(0) #define CAM_ISP_PARAM_CORE_CFG_HDR_MUX_SEL BIT(0)