diff --git a/core/hdd/src/wlan_hdd_ipa.c b/core/hdd/src/wlan_hdd_ipa.c index e2007a23a900..85b24ff2cce3 100644 --- a/core/hdd/src/wlan_hdd_ipa.c +++ b/core/hdd/src/wlan_hdd_ipa.c @@ -3090,11 +3090,15 @@ QDF_STATUS hdd_ipa_uc_ol_init(hdd_context_t *hdd_ctx) ret = ipa_connect_wdi_pipe(&ipa_ctxt->prod_pipe_in, &pipe_out); if (ret) { HDD_IPA_LOG(QDF_TRACE_LEVEL_ERROR, - "ipa_connect_wdi_pipe falied for Rx: ret=%d", + "ipa_connect_wdi_pipe failed for Rx: ret=%d", ret); stat = QDF_STATUS_E_FAILURE; + ret = ipa_disconnect_wdi_pipe(ipa_ctxt->tx_pipe_handle); + if (ret) + HDD_IPA_LOG(QDF_TRACE_LEVEL_ERROR, + "disconnect failed for TX: ret=%d", + ret); goto fail_return; - } ipa_ctxt->rx_ready_doorbell_paddr = pipe_out.uc_door_bell_pa; ipa_ctxt->rx_pipe_handle = pipe_out.clnt_hdl;