2021-10-26 07:03:21

by Baochen Qiang

[permalink] [raw]
Subject: [PATCH 3/7] ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ

From: Carl Huang <[email protected]>

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

Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1

Signed-off-by: Carl Huang <[email protected]>
Signed-off-by: Kalle Valo <[email protected]>
Signed-off-by: Baochen Qiang <[email protected]>
---
drivers/net/wireless/ath/ath11k/pci.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/net/wireless/ath/ath11k/pci.c b/drivers/net/wireless/ath/ath11k/pci.c
index bf8d34bc5afa..ed610e56c160 100644
--- a/drivers/net/wireless/ath/ath11k/pci.c
+++ b/drivers/net/wireless/ath/ath11k/pci.c
@@ -16,7 +16,8 @@
#define ATH11K_PCI_BAR_NUM 0
#define ATH11K_PCI_DMA_MASK 32

-#define ATH11K_PCI_IRQ_CE0_OFFSET 3
+#define ATH11K_PCI_IRQ_CE0_OFFSET 3
+#define ATH11K_PCI_IRQ_DP_OFFSET 14

#define WINDOW_ENABLE_BIT 0x40000000
#define WINDOW_REG_ADDRESS 0x310c
@@ -764,7 +765,7 @@ static int ath11k_pci_ext_irq_config(struct ath11k_base *ab)
}

irq_grp->num_irq = num_irq;
- irq_grp->irqs[0] = base_idx + i;
+ irq_grp->irqs[0] = ATH11K_PCI_IRQ_DP_OFFSET + i;

for (j = 0; j < irq_grp->num_irq; j++) {
int irq_idx = irq_grp->irqs[j];
--
2.25.1


2021-11-15 10:31:33

by Kalle Valo

[permalink] [raw]
Subject: Re: [PATCH 3/7] ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ

Baochen Qiang <[email protected]> writes:

> From: Carl Huang <[email protected]>
>
> Like ATH11K_PCI_IRQ_CE0_OFFSET, define ATH11K_PCI_IRQ_DP_OFFSET for
> DP to save the IRQ instead of base_vector from MSI config.
>
> Tested-on: QCA6390 hw2.0 PCI WLAN.HST.1.0.1-01740-QCAHSTSWPLZ_V2_TO_X86-1
>
> Signed-off-by: Carl Huang <[email protected]>
> Signed-off-by: Kalle Valo <[email protected]>
> Signed-off-by: Baochen Qiang <[email protected]>
> ---
> drivers/net/wireless/ath/ath11k/pci.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath11k/pci.c b/drivers/net/wireless/ath/ath11k/pci.c
> index bf8d34bc5afa..ed610e56c160 100644
> --- a/drivers/net/wireless/ath/ath11k/pci.c
> +++ b/drivers/net/wireless/ath/ath11k/pci.c
> @@ -16,7 +16,8 @@
> #define ATH11K_PCI_BAR_NUM 0
> #define ATH11K_PCI_DMA_MASK 32
>
> -#define ATH11K_PCI_IRQ_CE0_OFFSET 3
> +#define ATH11K_PCI_IRQ_CE0_OFFSET 3
> +#define ATH11K_PCI_IRQ_DP_OFFSET 14
>
> #define WINDOW_ENABLE_BIT 0x40000000
> #define WINDOW_REG_ADDRESS 0x310c
> @@ -764,7 +765,7 @@ static int ath11k_pci_ext_irq_config(struct ath11k_base *ab)
> }
>
> irq_grp->num_irq = num_irq;
> - irq_grp->irqs[0] = base_idx + i;
> + irq_grp->irqs[0] = ATH11K_PCI_IRQ_DP_OFFSET + i;

This broke the build, I fixed it in the pending branch:

drivers/net/wireless/ath/ath11k/pci.c: In function 'ath11k_pci_ext_irq_config':
drivers/net/wireless/ath/ath11k/pci.c:740:50: error: variable 'base_idx' set but not used [-Werror=unused-but-set-variable]

--
https://patchwork.kernel.org/project/linux-wireless/list/

https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches