|
@@ -222,9 +222,24 @@ int cam_vfe_top_ver3_init_hw(void *device_priv,
|
|
|
void *init_hw_args, uint32_t arg_size)
|
|
|
{
|
|
|
struct cam_vfe_top_ver3_priv *top_priv = device_priv;
|
|
|
+ struct cam_vfe_top_ver3_common_data common_data = top_priv->common_data;
|
|
|
|
|
|
top_priv->hw_clk_rate = 0;
|
|
|
|
|
|
+ /* Disable clock gating at IFE top */
|
|
|
+ CAM_INFO(CAM_ISP, "Disable clock gating at IFE top");
|
|
|
+ cam_soc_util_w_mb(common_data.soc_info, VFE_CORE_BASE_IDX,
|
|
|
+ common_data.common_reg->core_cgc_ovd_0, 0xFFFFFFFF);
|
|
|
+
|
|
|
+ cam_soc_util_w_mb(common_data.soc_info, VFE_CORE_BASE_IDX,
|
|
|
+ common_data.common_reg->core_cgc_ovd_1, 0xFF);
|
|
|
+
|
|
|
+ cam_soc_util_w_mb(common_data.soc_info, VFE_CORE_BASE_IDX,
|
|
|
+ common_data.common_reg->ahb_cgc_ovd, 0x1);
|
|
|
+
|
|
|
+ cam_soc_util_w_mb(common_data.soc_info, VFE_CORE_BASE_IDX,
|
|
|
+ common_data.common_reg->noc_cgc_ovd, 0x1);
|
|
|
+
|
|
|
return 0;
|
|
|
}
|
|
|
|