ath10k: fix NAPI enable/disable symmetry for AHB interface
authorMohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Mon, 20 Mar 2017 15:22:46 +0000 (20:52 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Wed, 5 Apr 2017 07:33:26 +0000 (10:33 +0300)
Move NAPI enable to 'ath10k_ahb_hif_start' from
'ath10k_ahb_hif_power_up'. This is to maintain the symmetry
of calling napi_enable() from ath10k_ahb_hif_start() so that it
matches with  napi_disable() being called from ath10k_pci_hif_stop().

This change is based on the crash fix from Kalle for PCI interface in
commit 1427228d5869 ("ath10k: fix napi crash during rmmod when probe
firmware fails").

Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/ahb.c

index 45226dbee5ce23c773db06c0d08ece006bcba2c0..da770af830369ffa66cfe7511786e05797d559d0 100644 (file)
@@ -640,6 +640,7 @@ static int ath10k_ahb_hif_start(struct ath10k *ar)
 {
        ath10k_dbg(ar, ATH10K_DBG_BOOT, "boot ahb hif start\n");
 
+       napi_enable(&ar->napi);
        ath10k_ce_enable_interrupts(ar);
        ath10k_pci_enable_legacy_irq(ar);
 
@@ -692,7 +693,6 @@ static int ath10k_ahb_hif_power_up(struct ath10k *ar)
                ath10k_err(ar, "could not wake up target CPU: %d\n", ret);
                goto err_ce_deinit;
        }
-       napi_enable(&ar->napi);
 
        return 0;