ath11k: support one MSI vector
cover ath11k: support one MSI vector
This patch set is to support one MSI vector for QCA6390.
Depends-On:
1. ath11k: Fix crash caused by uninitialized TX ring
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/
Baochen Qiang (1):
ath11k: Set IRQ affinity to CPU0 in case of one MSI vector
Carl Huang (6):
ath11k: get msi_data again after request_irq is called
ath11k: add CE and ext IRQ flag to indicate irq_handler
ath11k: use ATH11K_PCI_IRQ_DP_OFFSET for DP IRQ
ath11k: refactor multiple MSI vector implementation
ath11k: supports one MSI vector
ath11k: do not restore ASPM in case of single MSI vector
drivers/net/wireless/ath/ath11k/core.h | 2 + drivers/net/wireless/ath/ath11k/mhi.c | 14 +- drivers/net/wireless/ath/ath11k/pci.c | 181 +++++++++++++++++++++---- drivers/net/wireless/ath/ath11k/pci.h | 3 + 4 files changed, 173 insertions(+), 27 deletions(-)
Signature · 1 line
2.25.1
Quoted 9 lines · Baochen Qiang
This patch set is to support one MSI vector for QCA6390.
Depends-On:
1. ath11k: Fix crash caused by uninitialized TX ring
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/Baochen Qiang (1):
ath11k: Set IRQ affinity to CPU0 in case of one MSI vector
Quoted 7 lines
Carl Huang (6):
ath11k: getmsi_dataagain afterrequest_irqis called
ath11k: add CE and ext IRQ flag to indicateirq_handler
ath11k: useATH11K_PCI_IRQ_DP_OFFSETfor DP IRQ
ath11k: refactor multiple MSI vector implementation
ath11k: supports one MSI vector
ath11k: do not restore ASPM in case of single MSI vector
I assume this is v2 of Carl's patchset:
https://patchwork.kernel.org/project/linux-wireless/cover/[email protected]/
Can you provide a changelog? No need to resend because of that, just a reply to this thread enough.
Signature · 3 lines
https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 20 lines · Kalle Valo
Quoted 10 lines · Baochen Qiang
This patch set is to support one MSI vector for QCA6390.
Depends-On:
1. ath11k: Fix crash caused by uninitialized TX ringhttps://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/
Baochen Qiang (1):
ath11k: Set IRQ affinity to CPU0 in case of one MSI vectorQuoted 7 lines
Carl Huang (6):
ath11k: getmsi_dataagain afterrequest_irqis called
ath11k: add CE and ext IRQ flag to indicateirq_handler
ath11k: useATH11K_PCI_IRQ_DP_OFFSETfor DP IRQ
ath11k: refactor multiple MSI vector implementation
ath11k: supports one MSI vector
ath11k: do not restore ASPM in case of single MSI vector
Quoted 6 lines
I assume this is v2 of Carl's patchset:
https://patchwork.kernel.org/project/linux-wireless/cover/[email protected]/
Can you provide a changelog? No need to resend because of that, just a reply to this thread enough.
Hi Kalle, this is the changelog:
1. changes by Kalle based on Carl's v1:
* add a log message for MSI vector count
* add a log message when disabling ASPM
* patch 1: fix error handling in ath11k_pci_probe()
* patch 1: simplify ath11k_pci_config_msi_data()
* patch 2: convert booleans to set_bit() & co for atomic access
* patch 2:__ath11k_pci_ext_irq_disable(): fix compilation
* patch 4: bool vectors_32_capability to set_bit() for atomic access
* patch 4: ath11k_mhi_get_msi(): don't use ? operator
* improve commits logs a bit
2. changes by Baochen based on Kalle's version:
* add a new patch: "ath11k: Set IRQ affinity to CPU0 in case of one MSI vector"
* address Jeff's comments on "ath11k: do not restore ASPM in case of single MSI vector":
change debug info from "disabling PCI ASPM ..." to "leaving PCI ASPM
disabled ..."
* change error handling in patch "ath11k: get msi_data again after request_irq is called"
* address Vasanth's comments on "ath11k: refactor multiple msi vector implementation"
Signature · 3 lines
ath11k mailing list [email protected] http://lists.infradead.org/mailman/listinfo/ath11k
Quoted 43 lines · Baochen Qiang
Quoted 19 lines · Kalle Valo
Quoted 9 lines · Baochen Qiang
This patch set is to support one MSI vector for QCA6390.
Depends-On:
1. ath11k: Fix crash caused by uninitialized TX ring
https://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/Baochen Qiang (1):
ath11k: Set IRQ affinity to CPU0 in case of one MSI vectorQuoted 7 lines
Carl Huang (6):
ath11k: getmsi_dataagain afterrequest_irqis called
ath11k: add CE and ext IRQ flag to indicateirq_handler
ath11k: useATH11K_PCI_IRQ_DP_OFFSETfor DP IRQ
ath11k: refactor multiple MSI vector implementation
ath11k: supports one MSI vector
ath11k: do not restore ASPM in case of single MSI vectorQuoted 6 lines
I assume this is v2 of Carl's patchset:
https://patchwork.kernel.org/project/linux-wireless/cover/[email protected]/
Can you provide a changelog? No need to resend because of that, just a reply to this thread enough.
Hi Kalle, this is the changelog:
1. changes by Kalle based on Carl's v1:
* add a log message for MSI vector count
* add a log message when disabling ASPM
* patch 1: fix error handling inath11k_pci_probe()
* patch 1: simplifyath11k_pci_config_msi_data()
* patch 2: convert booleans toset_bit()& co for atomic access
* patch 2:__ath11k_pci_ext_irq_disable(): fix compilation
* patch 4: boolvectors_32_capabilitytoset_bit()for atomic access
* patch 4:ath11k_mhi_get_msi(): don't use ? operator
* improve commits logs a bit2. changes by Baochen based on Kalle's version:
Quoted 10 lines
* add a new patch: "ath11k: Set IRQ affinity to CPU0 in case of one MSI vector"
* address Jeff's comments on "ath11k: do not restore ASPM in case of single MSI vector":
change debug info from "disabling PCI ASPM ..." to "leaving
PCI ASPM disabled ..."
* change error handling in patch "ath11k: getmsi_dataagain afterrequest_irqis called"
* address Vasanth's comments on "ath11k: refactor multiple msi vector implementation"
Thanks. I shortly tested this patchset (commit 5d9dd5b3db33 in master-pending) on a NUC x86 box and Dell XPS 13 9310 laptop using QCA6390 hw2.0, both with 32 MSI vectors (VT-d enabled in BIOS) and 1 MSI vector (VT-d disabled in BIOS). No issues found, and also suspend works fine for me. So I think we have solved all the stability issues.
Signature · 3 lines
https://patchwork.kernel.org/project/linux-wireless/list/ https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
Quoted 57 lines · Kalle Valo
Quoted 44 lines · Baochen Qiang
Quoted 20 lines · Kalle Valo
Quoted 10 lines · Baochen Qiang
This patch set is to support one MSI vector for QCA6390.
Depends-On:
1. ath11k: Fix crash caused by uninitialized TX ringhttps://patchwork.kernel.org/project/linux-wireless/patch/[email protected]/
Baochen Qiang (1):
ath11k: Set IRQ affinity to CPU0 in case of one MSI vectorQuoted 7 lines
Carl Huang (6):
ath11k: getmsi_dataagain afterrequest_irqis called
ath11k: add CE and ext IRQ flag to indicateirq_handler
ath11k: useATH11K_PCI_IRQ_DP_OFFSETfor DP IRQ
ath11k: refactor multiple MSI vector implementation
ath11k: supports one MSI vector
ath11k: do not restore ASPM in case of single MSI vectorQuoted 6 lines
I assume this is v2 of Carl's patchset:
https://patchwork.kernel.org/project/linux-wireless/cover/[email protected]/
Can you provide a changelog? No need to resend because of that, just a reply to this thread enough.
Hi Kalle, this is the changelog:
1. changes by Kalle based on Carl's v1:
* add a log message for MSI vector count
* add a log message when disabling ASPM
* patch 1: fix error handling inath11k_pci_probe()
* patch 1: simplifyath11k_pci_config_msi_data()
* patch 2: convert booleans toset_bit()& co for atomic access
* patch 2:__ath11k_pci_ext_irq_disable(): fix compilation
* patch 4: boolvectors_32_capabilitytoset_bit()for atomic access
* patch 4:ath11k_mhi_get_msi(): don't use ? operator
* improve commits logs a bit2. changes by Baochen based on Kalle's version:
Quoted 10 lines
* add a new patch: "ath11k: Set IRQ affinity to CPU0 in case of one MSI vector"
* address Jeff's comments on "ath11k: do not restore ASPM in case of single MSI vector":
change debug info from "disabling PCI ASPM ..." to "leaving
PCI ASPM disabled ..."
* change error handling in patch "ath11k: getmsi_dataagain afterrequest_irqis called"
* address Vasanth's comments on "ath11k: refactor multiple msi vector implementation"
Quoted 5 lines
Thanks. I shortly tested this patchset (commit
5d9dd5b3db33in master-pending) on a NUC x86 box and Dell XPS 13 9310 laptop using QCA6390 hw2.0, both with 32 MSI vectors (VT-d enabled in BIOS) and 1 MSI vector (VT-d disabled in BIOS). No issues found, and also suspend works fine for me. So I think we have solved all the stability issues.
Great to hear that. But one more thing Kalle, have you met the issue which is originally reported here https://jira-dc.qualcomm.com/jira/browse/LUW-3 ?