12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- 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
- @@ -86,6 +86,8 @@
- pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>;
- reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>;
- status = "okay";
- +
- + max-link-speed = <1>;
- };
-
- /* J6 */
|