74 lines
3.2 KiB
Diff
74 lines
3.2 KiB
Diff
|
From 33f8fdcedb01680427328d710594facef7a0092c Mon Sep 17 00:00:00 2001
|
||
|
From: Tomasz Maciej Nowak <tmn505@gmail.com>
|
||
|
Date: Thu, 14 Jun 2018 14:40:26 +0200
|
||
|
Subject: [PATCH 2/2] arm64: dts: armada-3720-espressobin: set max link to gen1
|
||
|
|
||
|
Since the beginning there's been an issue with initializing the Atheros
|
||
|
based MiniPCIe wireless cards. Here's an example of kerenel log:
|
||
|
|
||
|
OF: PCI: host bridge /soc/pcie@d0070000 ranges:
|
||
|
OF: PCI: MEM 0xe8000000..0xe8ffffff -> 0xe8000000
|
||
|
OF: PCI: IO 0xe9000000..0xe900ffff -> 0xe9000000
|
||
|
advk-pcie d0070000.pcie: link up
|
||
|
advk-pcie d0070000.pcie: PCI host bridge to bus 0000:00
|
||
|
pci_bus 0000:00: root bus resource [bus 00-ff]
|
||
|
pci_bus 0000:00: root bus resource [mem0xe8000000-0xe8ffffff]
|
||
|
pci_bus 0000:00: root bus resource [io 0x0000-0xffff](bus address [0xe9000000-0xe900ffff])
|
||
|
pci 0000:00:00.0: BAR 0: assigned [mem0xe8000000-0xe801ffff 64bit]
|
||
|
pci 0000:00:00.0: BAR 6: assigned [mem0xe8020000-0xe802ffff pref]
|
||
|
[...]
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x3c
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x44
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
|
||
|
ath9k 0000:00:00.0: enabling device (0000 -> 0002)
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x3c
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0xc
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x40
|
||
|
ath9k 0000:00:00.0: request_irq failed
|
||
|
advk-pcie d0070000.pcie: Posted PIO Response Status: CA,0xe00 @ 0x4
|
||
|
ath9k: probe of 0000:00:00.0 failed with error -22
|
||
|
|
||
|
The same happens for ath5k cards, while ath10k card didn't appear at
|
||
|
all (not detected):
|
||
|
|
||
|
OF: PCI: host bridge /soc/pcie@d0070000 ranges:
|
||
|
OF: PCI: MEM 0xe8000000..0xe8ffffff -> 0xe8000000
|
||
|
OF: PCI: IO 0xe9000000..0xe900ffff -> 0xe9000000
|
||
|
advk-pcie d0070000.pcie: link never came up
|
||
|
advk-pcie d0070000.pcie: PCI host bridge to bus 0000:00
|
||
|
pci_bus 0000:00: root bus resource [bus 00-ff]
|
||
|
pci_bus 0000:00: root bus resource [mem0xe8000000-0xe8ffffff]
|
||
|
pci_bus 0000:00: root bus resource [io 0x0000-0xffff](bus address [0xe9000000-0xe900ffff])
|
||
|
advk-pcie d0070000.pcie: config read/write timed out
|
||
|
|
||
|
Following the issue on esppressobin.net forum [1] the workaround seems
|
||
|
to be limiting the speed of PCIe bridge to 1st generation. This fixed
|
||
|
the initialisation of all tested Atheros wireless cards.
|
||
|
The patch in the forum thread swaped registers which would limit speed
|
||
|
for all Armada 3700 based boards. The approach in this patch, in
|
||
|
conjunction with "PCI: aardvark: allow to specify link capability" patch
|
||
|
is less invasive, it only touches the affected board.
|
||
|
|
||
|
For the record, the iwlwifi and mt76 cards were not affected by this
|
||
|
issue.
|
||
|
|
||
|
1. http://espressobin.net/forums/topic/which-pcie-wlan-cards-are-supported
|
||
|
|
||
|
Signed-off-by: Tomasz Maciej Nowak <tmn505@gmail.com>
|
||
|
---
|
||
|
arch/arm64/boot/dts/marvell/armada-3720-espressobin.dts | 2 ++
|
||
|
1 file changed, 2 insertions(+)
|
||
|
|
||
|
--- a/arch/arm64/boot/dts/marvell/armada-3720-espressobin.dts
|
||
|
+++ b/arch/arm64/boot/dts/marvell/armada-3720-espressobin.dts
|
||
|
@@ -79,6 +79,8 @@
|
||
|
/* J9 */
|
||
|
&pcie0 {
|
||
|
status = "okay";
|
||
|
+
|
||
|
+ max-link-speed = <1>;
|
||
|
};
|
||
|
|
||
|
/* J6 */
|