dfda1aa98b27cd4d1ddfd6c12256932cc46d5a1a
[oweals/openwrt.git] /
1 From 852d91023cc24663e6b3b0707e98a189a7b1de87 Mon Sep 17 00:00:00 2001
2 From: Andy Duan <fugang.duan@nxp.com>
3 Date: Wed, 2 Jan 2019 17:55:44 +0800
4 Subject: [PATCH] MLK-20684 PCI: Disable MSI on CYW4356 and CYW4359 chips
5
6 MSI is broken on CYW4356/4359 chips. This causes CYW4356 1CX not
7 work on i.MX8x platforms with bandwidth test. It is known issue
8 that i.MX8x PCIe host driver MSI interrupt lost.
9
10 Disable MSI completely for this chipset to let wifi can stable work
11 until PCIe RC driver fix the issue.
12
13 Reviewed-by: Richard Zhu <hongxing.zhu@nxp.com>
14 Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
15 (cherry picked from commit d99766187fb99d4a6655a1e0fdf5dc9451a8e4a0)
16 ---
17  drivers/pci/quirks.c | 2 ++
18  1 file changed, 2 insertions(+)
19
20 --- a/drivers/pci/quirks.c
21 +++ b/drivers/pci/quirks.c
22 @@ -2444,6 +2444,8 @@ DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VI
23  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VT3364, quirk_disable_all_msi);
24  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8380_0, quirk_disable_all_msi);
25  DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_SI, 0x0761, quirk_disable_all_msi);
26 +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ec, quirk_disable_all_msi);
27 +DECLARE_PCI_FIXUP_EARLY(PCI_VENDOR_ID_BROADCOM, 0x43ef, quirk_disable_all_msi);
28  
29  /* Disable MSI on chipsets that are known to not support it */
30  static void quirk_disable_msi(struct pci_dev *dev)