ath10k: Fix error handling in case of CE pipe init failure

Currently if the copy engine pipe init fails for snoc based
chipsets, the rri is not freed.

Fix this error handling for copy engine pipe init
failure.

Tested-on: WCN3990 hw1.0 SNOC WLAN.HL.3.1-01040-QCAHLSWMTPLZ-1

Fixes: 4945af5b26 ("ath10k: enable SRRI/DRRI support on ddr for WCN3990")
Signed-off-by: Rakesh Pillai <pillair@codeaurora.org>
Reviewed-by: Brian Norris <briannorris@chromium.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
Link: https://lore.kernel.org/r/1607713210-18320-1-git-send-email-pillair@codeaurora.org
This commit is contained in:
Rakesh Pillai 2020-12-12 00:30:10 +05:30 committed by Kalle Valo
parent 13458ffe0a
commit 31561e8557
1 changed files with 3 additions and 2 deletions

View File

@ -1045,12 +1045,13 @@ static int ath10k_snoc_hif_power_up(struct ath10k *ar,
ret = ath10k_snoc_init_pipes(ar); ret = ath10k_snoc_init_pipes(ar);
if (ret) { if (ret) {
ath10k_err(ar, "failed to initialize CE: %d\n", ret); ath10k_err(ar, "failed to initialize CE: %d\n", ret);
goto err_wlan_enable; goto err_free_rri;
} }
return 0; return 0;
err_wlan_enable: err_free_rri:
ath10k_ce_free_rri(ar);
ath10k_snoc_wlan_disable(ar); ath10k_snoc_wlan_disable(ar);
return ret; return ret;