QCA6391: failed to get 32 MSI vectors, only 1 available
Devin Bayer
dev at doubly.so
Mon Nov 2 13:16:49 EST 2020
Hello,
I am trying to get a QCA6391 card to work with the ath11k driver. It
recognizes the card since it has the same device ID as the QCA6390.
However it fails to initialize:
> [ 4.241127] ath11k_pci 0000:03:00.0: WARNING: ath11k PCI support is experimental!
> [ 4.258806] ath11k_pci 0000:03:00.0: BAR 0: assigned [mem 0xd0000000-0xd0ffffff 64bit]
> [ 4.258838] ath11k_pci 0000:03:00.0: enabling device (0000 -> 0002)
> [ 4.258987] ath11k_pci 0000:03:00.0: failed to get 32 MSI vectors, only 1 available
> [ 4.258990] ath11k_pci 0000:03:00.0: failed to enable msi: -22
I've tried a few different kernel versions up to 5.10-rc2 and they all behave the same.
Does anyone know if there is anything I can do to get this to work?
Thanks,
Devin
Note: I applied a small patch to fix the debug output so it reports
the correct number of available vectors:
diff --git a/drivers/net/wireless/ath/ath11k/pci.c b/drivers/net/wireless/ath/ath11k/pci.c
index d7eb6b7160bb..afaacce5a5b6 100644
--- a/drivers/net/wireless/ath/ath11k/pci.c
+++ b/drivers/net/wireless/ath/ath11k/pci.c
@@ -638,7 +638,7 @@ static int ath11k_pci_enable_msi(struct ath11k_pci *ab_pci)
int ret;
num_vectors = pci_alloc_irq_vectors(ab_pci->pdev,
- msi_config.total_vectors,
+ 1,
msi_config.total_vectors,
PCI_IRQ_MSI);
if (num_vectors != msi_config.total_vectors) {
More information about the ath11k
mailing list