Loading drivers/platform/msm/ipa/ipa_v3/ipa.c +6 −0 Original line number Diff line number Diff line Loading @@ -2088,6 +2088,12 @@ static void ipa3_q6_avoid_holb(void) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, ep_idx, &ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, ep_idx, &ep_holb); } } } Loading drivers/platform/msm/ipa/ipa_v3/ipa_client.c +6 −0 Original line number Diff line number Diff line Loading @@ -1230,6 +1230,12 @@ int ipa3_set_reset_client_cons_pipe_sus_holb(bool set_reset, ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, pipe_idx, &ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, pipe_idx, &ep_holb); } client_lock_unlock_cb(client, false); return 0; Loading drivers/platform/msm/ipa/ipa_v3/ipa_utils.c +5 −0 Original line number Diff line number Diff line Loading @@ -5271,6 +5271,11 @@ int ipa3_cfg_ep_holb(u32 clnt_hdl, const struct ipa_ep_cfg_holb *ep_holb) ipahal_write_reg_n_fields(IPA_ENDP_INIT_HOL_BLOCK_EN_n, clnt_hdl, ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields(IPA_ENDP_INIT_HOL_BLOCK_EN_n, clnt_hdl, ep_holb); /* Configure timer */ if (ipa3_ctx->ipa_hw_type == IPA_HW_v4_2) { ipa3_cal_ep_holb_scale_base_val(ep_holb->tmr_val, Loading Loading
drivers/platform/msm/ipa/ipa_v3/ipa.c +6 −0 Original line number Diff line number Diff line Loading @@ -2088,6 +2088,12 @@ static void ipa3_q6_avoid_holb(void) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, ep_idx, &ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, ep_idx, &ep_holb); } } } Loading
drivers/platform/msm/ipa/ipa_v3/ipa_client.c +6 −0 Original line number Diff line number Diff line Loading @@ -1230,6 +1230,12 @@ int ipa3_set_reset_client_cons_pipe_sus_holb(bool set_reset, ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, pipe_idx, &ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields( IPA_ENDP_INIT_HOL_BLOCK_EN_n, pipe_idx, &ep_holb); } client_lock_unlock_cb(client, false); return 0; Loading
drivers/platform/msm/ipa/ipa_v3/ipa_utils.c +5 −0 Original line number Diff line number Diff line Loading @@ -5271,6 +5271,11 @@ int ipa3_cfg_ep_holb(u32 clnt_hdl, const struct ipa_ep_cfg_holb *ep_holb) ipahal_write_reg_n_fields(IPA_ENDP_INIT_HOL_BLOCK_EN_n, clnt_hdl, ep_holb); /* IPA4.5 issue requires HOLB_EN to be written twice */ if (ipa3_ctx->ipa_hw_type >= IPA_HW_v4_5) ipahal_write_reg_n_fields(IPA_ENDP_INIT_HOL_BLOCK_EN_n, clnt_hdl, ep_holb); /* Configure timer */ if (ipa3_ctx->ipa_hw_type == IPA_HW_v4_2) { ipa3_cal_ep_holb_scale_base_val(ep_holb->tmr_val, Loading