OpenWrt/LEDE Project

  • Status Unconfirmed
  • Percent Complete
    0%
  • Task Type Bug Report
  • Category Kernel
  • Assigned To No-one
  • Operating System All
  • Severity Critical
  • Priority Very Low
  • Reported Version openwrt-21.02
  • Due in Version Undecided
  • Due Date Undecided
  • Private
Attached to Project: OpenWrt/LEDE Project
Opened by damnms - 25.07.2021

FS#3948 - ath10k not working on clearfog pro with openwrt-21.02

Supply the following if possible:
- Device problem occurs on
SolidRun Clearfog Pro A1

- Software versions of OpenWrt/LEDE release, packages, etc.
openwrt branch 21.02

- Steps to reproduce
boot it with a compex wle600 or wle900 pcie wifi card and it will report something like:

[  683.019493] ath10k_pci 0000:02:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[  683.265291] ath10k_pci 0000:02:00.0: qca988x hw2.0 target 0x4100016c chip_id 0x043202ff sub 0000:0000
[  683.274540] ath10k_pci 0000:02:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 0
[  683.284178] ath10k_pci 0000:02:00.0: firmware ver 10.2.4-1.0-00047 api 5 features no-p2p,raw-mode,mfp,allows-mesh-bcast crc32 35bd9258
[  683.342118] ath10k_pci 0000:02:00.0: board_file api 1 bmi_id N/A crc32 bebc7c08
[  685.564553] ath10k_pci 0000:02:00.0: failed to receive control response completion, polling..
[  686.604459] ath10k_pci 0000:02:00.0: Service connect timeout
[  686.610136] ath10k_pci 0000:02:00.0: failed to connect htt (-110)
[  686.725295] ath10k_pci 0000:02:00.0: could not init core (-110)
[  686.731257] ath10k_pci 0000:02:00.0: could not probe fw (-110)

I configured the kernel with CONFIG_PACKAGE_ath10k-board-qca988x=y and CONFIG_PACKAGE_ath10k-firmware-qca988x=y

In openwrt 19.x i get:

 OpenWrt 19.07.7, r11306-c4a6851c72
 -----------------------------------------------------
root@OpenWrt:~# dmesg | grep ath
[   11.207948] ath10k_pci 0000:02:00.0: enabling device (0140 -> 0142)
[   11.214444] ath10k_pci 0000:02:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0
[   11.454635] ath10k_pci 0000:02:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:02:00.0.bin failed with error -2
[   11.465380] ath10k_pci 0000:02:00.0: Falling back to user helper
[   11.507440] firmware ath10k!pre-cal-pci-0000:02:00.0.bin: firmware_loading_store: map pages failed
[   11.516611] ath10k_pci 0000:02:00.0: Direct firmware load for ath10k/cal-pci-0000:02:00.0.bin failed with error -2
[   11.527009] ath10k_pci 0000:02:00.0: Falling back to user helper
[   11.537130] firmware ath10k!cal-pci-0000:02:00.0.bin: firmware_loading_store: map pages failed
[   11.545913] ath10k_pci 0000:02:00.0: Direct firmware load for ath10k/QCA988X/hw2.0/firmware-6.bin failed with error -2
[   11.556650] ath10k_pci 0000:02:00.0: Falling back to user helper
[   11.566721] firmware ath10k!QCA988X!hw2.0!firmware-6.bin: firmware_loading_store: map pages failed
[   11.623287] ath10k_pci 0000:02:00.0: qca988x hw2.0 target 0x4100016c chip_id 0x043222ff sub 0000:0000
[   11.632549] ath10k_pci 0000:02:00.0: kconfig debug 0 debugfs 1 tracing 0 dfs 1 testmode 1
[   11.642078] ath10k_pci 0000:02:00.0: firmware ver 10.2.4-1.0-00047 api 5 features no-p2p,raw-mode,mfp,allows-mesh-bcast crc32 35bd9258
[   11.686880] ath10k_pci 0000:02:00.0: Direct firmware load for ath10k/QCA988X/hw2.0/board-2.bin failed with error -2
[   11.697349] ath10k_pci 0000:02:00.0: Falling back to user helper
[   11.707724] firmware ath10k!QCA988X!hw2.0!board-2.bin: firmware_loading_store: map pages failed
[   11.720044] ath10k_pci 0000:02:00.0: board_file api 1 bmi_id N/A crc32 bebc7c08
[   12.859296] ath10k_pci 0000:02:00.0: htt-ver 2.1 wmi-op 5 htt-op 2 cal otp max-sta 128 raw 0 hwcrypto 1
[   12.992322] ath: EEPROM regdomain: 0x0
[   12.992325] ath: EEPROM indicates default country code should be used
[   12.992327] ath: doing EEPROM country->regdmn map search
[   12.992330] ath: country maps to regdmn code: 0x3a
[   12.992333] ath: Country alpha2 being used: US
[   12.992334] ath: Regpair used: 0x3a
[   14.794232] ath: EEPROM regdomain: 0x82f4
[   14.804051] ath: EEPROM indicates we should expect a country code
[   14.810159] ath: doing EEPROM country->regdmn map search
[   14.815521] ath: country maps to regdmn code: 0x37
[   14.820326] ath: Country alpha2 being used: CH
[   14.824790] ath: Regpair used: 0x37
[   14.828285] ath: regdomain 0x82f4 dynamically updated by user
[   17.571688] ath10k_pci 0000:02:00.0: pdev param 0 not supported by firmware

I tried it also with the -ht firmware in v21_02 but still no luck.
Here https://githubmemory.com/repo/greearb/ath10k-ct/issues/148 someone mentioned that this might be a problem with SolidRun’s PCIe implementation (if i understood that correctly).

damnms commented on 02.08.2021 07:49

Got that working now with help from solidrun support.
here is the email:

I think OpenWrt 21.02 uses kernel v5.4. Make sure you have this commit: https://git.kernel.org/linus/216f8e95aacc Or run kernel v5.9 or newer that includes this fix. Alternatively, as the commit message suggests, you can try adding
pci=nomsi to the kernel command line.

with that patch i can confirm it works

damnms commented on 03.08.2021 13:46

the patch will be in 5.4.138 mainline, see https://lkml.org/lkml/2021/8/2/589 - PCI: mvebu: Setup BAR0 in order to fix MSI

Loading...

Available keyboard shortcuts

Tasklist

Task Details

Task Editing