summaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath10k/pci.c
diff options
context:
space:
mode:
authorMichal Kazior2013-07-05 15:15:02 +0200
committerKalle Valo2013-07-30 17:01:16 +0200
commita783c77076d9d06558a6d4bb07f0c1e0819c8c89 (patch)
treed9d2c016c404750cf2b9978e11888b83e6a207f7 /drivers/net/wireless/ath/ath10k/pci.c
parentmwifiex: code rearrangement in sdio.c (diff)
downloadkernel-qcow2-linux-a783c77076d9d06558a6d4bb07f0c1e0819c8c89.tar.gz
kernel-qcow2-linux-a783c77076d9d06558a6d4bb07f0c1e0819c8c89.tar.xz
kernel-qcow2-linux-a783c77076d9d06558a6d4bb07f0c1e0819c8c89.zip
ath10k: fix teardown ordering
This should fix memory corruption if HIF is tried to be restarted. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath10k/pci.c')
-rw-r--r--drivers/net/wireless/ath/ath10k/pci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/pci.c b/drivers/net/wireless/ath/ath10k/pci.c
index 33af4672c909..92f35f2c4f6e 100644
--- a/drivers/net/wireless/ath/ath10k/pci.c
+++ b/drivers/net/wireless/ath/ath10k/pci.c
@@ -1263,7 +1263,6 @@ static void ath10k_pci_hif_stop(struct ath10k *ar)
ath10k_pci_process_ce(ar);
ath10k_pci_cleanup_ce(ar);
ath10k_pci_buffer_cleanup(ar);
- ath10k_pci_ce_deinit(ar);
}
static int ath10k_pci_hif_exchange_bmi_msg(struct ath10k *ar,
@@ -2333,6 +2332,7 @@ static void ath10k_pci_remove(struct pci_dev *pdev)
tasklet_kill(&ar_pci->msi_fw_err);
ath10k_core_unregister(ar);
+ ath10k_pci_ce_deinit(ar);
ath10k_pci_stop_intr(ar);
pci_set_drvdata(pdev, NULL);