瀏覽代碼

msm: ipa3: Enabling the HOLB on USB consumer pipe for APQ target

Enabling the HOLB on USB consumer pipe to avoid IPA HW stall
if USB host slow in pulling the data.

Change-Id: Ifc4b13ce52e241a3b1942bd81745f1ef3b2903e7
Signed-off-by: Ashok Vuyyuru <[email protected]>
Ashok Vuyyuru 3 年之前
父節點
當前提交
6d4fa6b6e8
共有 1 個文件被更改,包括 10 次插入3 次删除
  1. 10 3
      drivers/platform/msm/ipa/ipa_v3/ipa_client.c

+ 10 - 3
drivers/platform/msm/ipa/ipa_v3/ipa_client.c

@@ -68,11 +68,18 @@ int ipa3_enable_data_path(u32 clnt_hdl)
 		if ((ep->client == IPA_CLIENT_USB_DPL_CONS) ||
 				(ep->client == IPA_CLIENT_TPUT_CONS) ||
 				(ep->client == IPA_CLIENT_MHI_DPL_CONS) ||
-				(ep->client == IPA_CLIENT_MHI_QDSS_CONS))
+				(ep->client == IPA_CLIENT_MHI_QDSS_CONS)) {
 			holb_cfg.en = IPA_HOLB_TMR_EN;
-		else
+			holb_cfg.tmr_val = 0;
+		} else if (ipa3_ctx->ipa_hw_type >= IPA_HW_v5_1 &&
+			ipa3_ctx->platform_type == IPA_PLAT_TYPE_APQ &&
+			ep->client == IPA_CLIENT_USB_CONS) {
+			holb_cfg.en = IPA_HOLB_TMR_EN;
+			holb_cfg.tmr_val = IPA_HOLB_TMR_VAL_4_5;
+		} else {
 			holb_cfg.en = IPA_HOLB_TMR_DIS;
-		holb_cfg.tmr_val = 0;
+			holb_cfg.tmr_val = 0;
+		}
 		res = ipa3_cfg_ep_holb(clnt_hdl, &holb_cfg);
 	}