OSDN Git Service

ath10k: fix operating irq mode for ahb device
authorRajkumar Manoharan <rmanohar@qti.qualcomm.com>
Fri, 27 May 2016 14:45:55 +0000 (20:15 +0530)
committerKalle Valo <kvalo@qca.qualcomm.com>
Thu, 2 Jun 2016 14:55:05 +0000 (17:55 +0300)
Earlier when operating irq mode is legacy, interrupts are disabled
and re-enabled based on num_msi_intrs. commit cfe9011a05a8 ("ath10k:
remove MSI range support") replaced num_msi_intrs by oper_irq_mode.
Since oper_irq_mode is not initialized for ahb devices (i.e qca4019),
device boot up is failed during probe.

Fixes: cfe9011a05a8 ("ath10k: remove MSI range support")
Signed-off-by: Rajkumar Manoharan <rmanohar@qti.qualcomm.com>
Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
drivers/net/wireless/ath/ath10k/ahb.c

index bd62bc1..37ff36f 100644 (file)
@@ -476,6 +476,7 @@ static irqreturn_t ath10k_ahb_interrupt_handler(int irq, void *arg)
 
 static int ath10k_ahb_request_irq_legacy(struct ath10k *ar)
 {
+       struct ath10k_pci *ar_pci = ath10k_pci_priv(ar);
        struct ath10k_ahb *ar_ahb = ath10k_ahb_priv(ar);
        int ret;
 
@@ -487,6 +488,7 @@ static int ath10k_ahb_request_irq_legacy(struct ath10k *ar)
                            ar_ahb->irq, ret);
                return ret;
        }
+       ar_pci->oper_irq_mode = ATH10K_PCI_IRQ_LEGACY;
 
        return 0;
 }