Commit 1f1f7d54 authored by Kang Yang's avatar Kang Yang Committed by Kalle Valo

wifi: ath12k: use ATH12K_PCI_IRQ_DP_OFFSET for DP IRQ

Like ATH12K_PCI_IRQ_CE0_OFFSET, define ATH12K_PCI_IRQ_DP_OFFSET for
DP to save the IRQ instead of base_vector from MSI config.

Tested-on: WCN7850 hw2.0 PCI WLAN.HMT.1.0-03427-QCAHMTSWPL_V1.0_V2.0_SILICONZ-1.15378.4
Signed-off-by: default avatarKang Yang <quic_kangyang@quicinc.com>
Acked-by: default avatarJeff Johnson <quic_jjohnson@quicinc.com>
Signed-off-by: default avatarKalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20231121021304.12966-4-quic_kangyang@quicinc.com
parent 604308a3
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#define ATH12K_PCI_DMA_MASK 32 #define ATH12K_PCI_DMA_MASK 32
#define ATH12K_PCI_IRQ_CE0_OFFSET 3 #define ATH12K_PCI_IRQ_CE0_OFFSET 3
#define ATH12K_PCI_IRQ_DP_OFFSET 14
#define WINDOW_ENABLE_BIT 0x40000000 #define WINDOW_ENABLE_BIT 0x40000000
#define WINDOW_REG_ADDRESS 0x310c #define WINDOW_REG_ADDRESS 0x310c
...@@ -511,9 +512,8 @@ static irqreturn_t ath12k_pci_ext_interrupt_handler(int irq, void *arg) ...@@ -511,9 +512,8 @@ static irqreturn_t ath12k_pci_ext_interrupt_handler(int irq, void *arg)
static int ath12k_pci_ext_irq_config(struct ath12k_base *ab) static int ath12k_pci_ext_irq_config(struct ath12k_base *ab)
{ {
int i, j, ret, num_vectors = 0; int i, j, ret, num_vectors = 0;
u32 user_base_data = 0, base_vector = 0, base_idx; u32 user_base_data = 0, base_vector = 0;
base_idx = ATH12K_PCI_IRQ_CE0_OFFSET + CE_COUNT_MAX;
ret = ath12k_pci_get_user_msi_assignment(ab, "DP", ret = ath12k_pci_get_user_msi_assignment(ab, "DP",
&num_vectors, &num_vectors,
&user_base_data, &user_base_data,
...@@ -542,7 +542,7 @@ static int ath12k_pci_ext_irq_config(struct ath12k_base *ab) ...@@ -542,7 +542,7 @@ static int ath12k_pci_ext_irq_config(struct ath12k_base *ab)
} }
irq_grp->num_irq = num_irq; irq_grp->num_irq = num_irq;
irq_grp->irqs[0] = base_idx + i; irq_grp->irqs[0] = ATH12K_PCI_IRQ_DP_OFFSET + i;
for (j = 0; j < irq_grp->num_irq; j++) { for (j = 0; j < irq_grp->num_irq; j++) {
int irq_idx = irq_grp->irqs[j]; int irq_idx = irq_grp->irqs[j];
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment