openwrtv4/target/linux
Tomasz Maciej Nowak 772258044b mvebu: reduce speed to gen1 for espressobin pcie
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 change shouldn't affect the performance for wireless cards,
it could reduce the performance of storage controller cards but since
OpenWrt focuses on wireless connectivity, fixing compatibility with
wireless cards should be a priority.

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 <tomek_n@o2.pl>
2018-06-18 07:10:20 +02:00
..
adm5120 kernel: mark all v3.18 and v4.4 kernels are source-only 2018-05-24 08:55:52 +02:00
adm8668 kernel: mark all v3.18 and v4.4 kernels are source-only 2018-05-24 08:55:52 +02:00
apm821xx kernel: bump 4.14 to 4.14.48 2018-06-05 22:54:00 +03:00
ar7 kernel: bump 4.9 to 4.9.100 2018-05-18 09:10:21 +02:00
ar71xx kernel: bump 4.9 to 4.9.107 2018-06-09 22:39:17 +02:00
arc770 arc770: remove source-only 2018-05-22 07:20:26 +02:00
archs38 kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
armvirt arm64: enable harden branch predictor 2018-04-27 21:34:18 +02:00
at91 kernel: bump 4.9 to 4.9.100 2018-05-18 09:10:21 +02:00
ath25 ath25: drop 4.9 kernel support 2018-05-22 07:20:13 +02:00
ath79 ath79: move Netgear build code into a common makefile 2018-06-18 07:10:19 +02:00
au1000 kernel: mark all v3.18 and v4.4 kernels are source-only 2018-05-24 08:55:52 +02:00
bcm53xx mac80211: backport "brcmfmac: cleanup and some rework" from 4.17 2018-06-17 22:46:29 +02:00
brcm47xx kernel: bump to 4.9.105 2018-06-01 08:25:14 +02:00
brcm63xx kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
brcm2708 brcm2708: move wifi calibration EEPROMs out of base-files 2018-06-14 18:15:33 +02:00
cns3xxx kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
gemini gemini: Cook SQ201 images 2018-06-18 06:35:33 +02:00
generic kernel: bump 4.14 to 4.14.49 2018-06-18 07:10:19 +02:00
imx6 kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
ipq40xx ipq40xx: add get_status_led to diag.sh 2018-06-18 07:10:19 +02:00
ipq806x ipq806x: Enlarge R7800 flash - use netgear partition 2018-06-07 09:19:39 +02:00
ixp4xx kernel: bump to 4.9.105 2018-06-01 08:25:14 +02:00
kirkwood kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
lantiq lantiq-vdsl-fw: update to provide recent vectoring firmware 2018-06-15 12:45:37 +02:00
layerscape kernel: bump to 4.9.105 2018-06-01 08:25:14 +02:00
malta malta: bump tp v4.14 2018-01-09 10:26:16 +01:00
mcs814x kernel: mark all v3.18 and v4.4 kernels are source-only 2018-05-24 08:55:52 +02:00
mediatek mediatek: mt7622: Do not deactivate CONFIG_BLK_DEV 2018-06-18 07:10:19 +02:00
mpc85xx kernel: bump to 4.9.105 2018-06-01 08:25:14 +02:00
mvebu mvebu: reduce speed to gen1 for espressobin pcie 2018-06-18 07:10:20 +02:00
mxs kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
octeon kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
octeontx kernel: enable THIN_ARCHIVES by default 2018-05-22 07:55:20 +02:00
omap kernel: enable EXPORTFS by default 2018-05-22 07:55:05 +02:00
omap24xx omap24xx: remove referece to not existing kmod-usb-musb-tusb6010 2018-01-15 13:13:34 +01:00
orion orion: remove linux 4.4 support 2018-04-19 14:38:57 +02:00
oxnas kernel: bump 4.14 to 4.14.48 2018-06-05 22:54:00 +03:00
pistachio kernel: bump 4.14 to 4.14.42 2018-05-22 20:49:08 +02:00
ppc40x treewide: drop target board_name functions 2017-07-15 23:13:34 +02:00
ppc44x ppc44x: mark as broken 2017-01-10 12:49:34 +01:00
ramips kernel: bump 4.14 to 4.14.49 2018-06-18 07:10:19 +02:00
rb532 treewide: move nand_do_upgrade call to platform_do_upgrade 2018-02-16 14:44:02 +01:00
sunxi kernel: bump 4.9 to 4.9.108 2018-06-18 07:10:19 +02:00
uml kernel: bump 4.9 to 4.9.100 2018-05-18 09:10:21 +02:00
x86 kernel: bump 4.9 to 4.9.106 2018-06-07 09:04:46 +02:00
xburst kernel: mark all v3.18 and v4.4 kernels are source-only 2018-05-24 08:55:52 +02:00
zynq zynq: remove support for kernel 4.4 2018-06-07 09:00:49 +02:00
Makefile