Bug 215987

Summary: ath11k: WCN6855: missing board file for Lantronix HDK8450
Product: Drivers Reporter: Dmitry Baryshkov (dbaryshkov)
Component: network-wirelessAssignee: drivers_network-wireless (drivers_network-wireless)
Status: NEW ---    
Severity: normal CC: dbaryshkov, jbowen, konrad.dybcio, kvalo
Priority: P4    
Hardware: All   
OS: Linux   
Kernel Version: 5.18-rc7 Subsystem:
Regression: No Bisected commit-id:

Description Dmitry Baryshkov 2022-05-16 16:04:59 UTC
I have been testing the wcn6855 support on the Qualcomm SM8450 platforms (Lantronix HDK8450). Loading firmware from linux-firmware doesn't work. It has Qualcomm WCN6856 chip onboard. 

Kernel: 5.18-rc7 + PCIe patches + driver to boot up the WCN6856.
Distro: Yocto + meta-qcom
Reproducible: each time.


root@qcom-armv8a:~# uname -a
Linux qcom-armv8a 5.18.0-rc7-00052-g1355d64bc314 #878 SMP Mon May 16 16:25:45 MSK 2022 aarch64 GNU/Linux

root@qcom-armv8a:~# lspci -mnn
00:00.0 "PCI bridge [0604]" "Qualcomm [17cb]" "Device [0110]" -p00 "" ""
01:00.0 "Network controller [0280]" "Qualcomm [17cb]" "QCNFA765 Wireless Network Adapter [1103]" -r01 -p00 "Qualcomm [17cb]" "Device [0108]"
0001:00:00.0 "PCI bridge [0604]" "Qualcomm [17cb]" "Device [0110]" -p00 "" ""

root@qcom-armv8a:~# md5sum /lib/firmware/ath11k/WCN6855/hw2.1/*.bin
460fbd5ddc57b3d2efbf1ca976f78b90  /lib/firmware/ath11k/WCN6855/hw2.1/amss.bin
88b3a4fbde8cab4493f0060ae3b5dee3  /lib/firmware/ath11k/WCN6855/hw2.1/board-2.bin
7fd1c2337b0b6502588d3141e205e735  /lib/firmware/ath11k/WCN6855/hw2.1/board.bin
d1460fc1c4595d0d22f82d5baeaabbd8  /lib/firmware/ath11k/WCN6855/hw2.1/m3.bin
f67be83659c790fe15d1e42af501e9fa  /lib/firmware/ath11k/WCN6855/hw2.1/regdb.bin

root@qcom-armv8a:~# dmesg | grep ath11k
[    2.794913] ath11k_pci 0000:01:00.0: Adding to iommu group 1
[    2.802754] ath11k_pci 0000:01:00.0: BAR 0: assigned [mem 0x60400000-0x605fffff 64bit]
[    2.810980] ath11k_pci 0000:01:00.0: enabling device (0000 -> 0002)
[    2.818429] ath11k_pci 0000:01:00.0: MSI vectors: 1
[    2.823473] ath11k_pci 0000:01:00.0: wcn6855 hw2.1
[    3.778991] ath11k_pci 0000:01:00.0: chip_id 0x2 chip_family 0xb board_id 0xa7 soc_id 0x400c0210
[    3.788036] ath11k_pci 0000:01:00.0: fw_version 0x110f0c35 fw_build_timestamp 2022-03-30 09:05 fw_build_id QC_IMAGE_VERSION_STRING=WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3.6510.7
[    3.812838] ath11k_pci 0000:01:00.0: failed to fetch board data for bus=pci,vendor=17cb,device=1103,subsystem-vendor=17cb,subsystem-device=0108,qmi-chip-id=2,qmi-board-id=167 from ath11k/WCN6855/hw2.1/board-2.bin
[   14.101999] ath11k_pci 0000:01:00.0: failed to wait board file download request: -110
[   14.110098] ath11k_pci 0000:01:00.0: qmi failed to load bdf file
[   14.116308] ath11k_pci 0000:01:00.0: failed to load board data file: -110


The same behaviour can be reproduced with each firmware version from ath11k-firmware repo.


With the earlier firmware from ChromeOS (https://chromium.googlesource.com/chromiumos/third_party/linux-firmware/+/d233ddd89abe06448070471963a58c0a7da81d79/ath11k/WCN6855/hw2.0) I'm getting the following trace (and
WiFi device probes and works). Interestingly enough the chip_id differs between
these firmware versions.

[    4.352661] ath11k_pci 0000:01:00.0: Adding to iommu group 3
[    4.359192] ath11k_pci 0000:01:00.0: BAR 0: assigned [mem
0x60400000-0x605fffff 64bit]
[    4.367466] ath11k_pci 0000:01:00.0: enabling device (0000 -> 0002)
[    4.374916] ath11k_pci 0000:01:00.0: MSI vectors: 1
[    4.379963] ath11k_pci 0000:01:00.0: wcn6855 hw2.0
[    5.273930] ath11k_pci 0000:01:00.0: chip_id 0x0 chip_family 0xb
board_id 0x8c soc_id 0x400c0200
[    5.286020] ath11k_pci 0000:01:00.0: fw_version 0x110406b8
fw_build_timestamp 2021-01-08 06:14 fw_build_id
QC_IMAGE_VERSION_STRING=WLAN.HSP.1.1-01720.1-QCAHSPSWPL_V1_V2_SILICONZ_LITE-1
[    5.312464] ath11k_pci 0000:01:00.0: failed to fetch board data for
bus=pci,vendor=17cb,device=1103,subsystem-vendor=17cb,subsystem-device=0108,qmi-chip-id=0,qmi-board-id=140
from ath11k/WCN6855/hw2.0/board-2.bin
[    5.384315] ath11k_pci 0000:01:00.0: leaving PCI ASPM disabled to
avoid MHI M2 problems


Using the firmware from Qualcomm I has able to get the board to work (note, it uses WLAN.HSP.2.0):

[    4.240309] ath11k_pci 0000:01:00.0: Adding to iommu group 3
[    4.247454] ath11k_pci 0000:01:00.0: BAR 0: assigned [mem
0x60400000-0x605fffff 64bit]
[    4.255706] ath11k_pci 0000:01:00.0: enabling device (0000 -> 0002)
[    4.263119] ath11k_pci 0000:01:00.0: MSI vectors: 1
[    4.268164] ath11k_pci 0000:01:00.0: wcn6855 hw2.1
[    5.249568] ath11k_pci 0000:01:00.0: chip_id 0x2 chip_family 0xb
board_id 0x8c soc_id 0x400c0210
[    5.261639] ath11k_pci 0000:01:00.0: fw_version 0x200f0504
fw_build_timestamp 2021-11-30 18:48 fw_build_id
QC_IMAGE_VERSION_STRING=WLAN.HSP.2.0-01284-QCAHSPSWPL_V1_V2_SILICONZ-1
[    5.333813] ath11k_pci 0000:01:00.0: leaving PCI ASPM disabled to
avoid MHI M2 problems
Comment 1 Kalle Valo 2022-05-16 16:33:32 UTC
Dmitry mentioned in the ath11k list:

The devices I have here use the following board IDs:

bus=pci,vendor=17cb,device=1103,subsystem-vendor=17cb,subsystem-device=0108,qmi-chip-id=2,qmi-board-id=167
bus=pci,vendor=17cb,device=1103,subsystem-vendor=17cb,subsystem-device=0108,qmi-chip-id=2,qmi-board-id=140
Comment 2 Dmitry Baryshkov 2022-06-01 12:33:34 UTC
Note, there are two different issues:
- missing board files
- inability of the firmware to load the board file, as shown by the following lines:

[   14.101999] ath11k_pci 0000:01:00.0: failed to wait board file download request: -110
[   14.110098] ath11k_pci 0000:01:00.0: qmi failed to load bdf file
[   14.116308] ath11k_pci 0000:01:00.0: failed to load board data file: -110
Comment 5 Kalle Valo 2023-03-08 09:17:17 UTC
(In reply to Dmitry Baryshkov from comment #2)
> Note, there are two different issues:
> - missing board files
> - inability of the firmware to load the board file, as shown by the
> following lines:
> 
> [   14.101999] ath11k_pci 0000:01:00.0: failed to wait board file download
> request: -110
> [   14.110098] ath11k_pci 0000:01:00.0: qmi failed to load bdf file
> [   14.116308] ath11k_pci 0000:01:00.0: failed to load board data file: -110

One issue per report, please. This report is about missing board file for Lantronix HDK8450.

Also don't try firmware or board file releases from outside of linux-firmware or my git repo[1], they are completely unsupported in ath11k.

[1] https://github.com/kvalo/ath11k-firmware