ath10k: don't disable interrupts in ath10k_sdio_remove()
authorWen Gong <wgong@codeaurora.org>
Fri, 19 Apr 2019 07:28:47 +0000 (10:28 +0300)
committerKalle Valo <kvalo@codeaurora.org>
Tue, 23 Apr 2019 13:23:27 +0000 (16:23 +0300)
Disabling interrupts this early meant WMI communication was not working anymore
when the SDIO device was removed. But we call ath10k_core_unregister() that
will eventually call ath10k_sdio_hif_stop(), which disables the interrupts. So
there's actually no need to disable interrupts here.

Also remove cancel_work_sync() as it's also called in ath10k_sdio_hif_stop().

Tested with QCA6174 SDIO with firmware WLAN.RMH.4.4.1-00007-QCARMSWP-1.

Signed-off-by: Wen Gong <wgong@codeaurora.org>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
drivers/net/wireless/ath/ath10k/sdio.c

index fae56c67766f4deed887afb02140e68868a3e48c..d573d24624c0ecc8ab66cc233069eb2cfbbd9fb1 100644 (file)
@@ -2073,8 +2073,6 @@ static void ath10k_sdio_remove(struct sdio_func *func)
                   "sdio removed func %d vendor 0x%x device 0x%x\n",
                   func->num, func->vendor, func->device);
 
-       (void)ath10k_sdio_hif_disable_intrs(ar);
-       cancel_work_sync(&ar_sdio->wr_async_work);
        ath10k_core_unregister(ar);
        ath10k_core_destroy(ar);
 }