TP-Link EAP620 HD v2

Look into the ipq-wifi Makefile. You need to add some lines in a couple of places.

I followed the instructions here:

# To add local files for testing:
# 1. create a new directory in the ipq-wifi package directory called "files".
# 2. place there the needed board files.
#
# To send a board file upstream:
# 1. create a pull request in https://github.com/openwrt/firmware_qca-wireless or
#    send a patch to the mailing list adding the tag firmware/qca-wireless before
#     the PATCH tag.
# 2. create a pull request in the main openwrt repository bumping the ipq-wifi
#    package to the new version and adding the required lines to add the board file.
#
# Changes needed to the ipq-wifi Makefile:
# 1. Add board name to ALLWIFIBOARDS
# 2. Add $(eval $(call generate-ipq-wifi-package,<devicename>,<display name>))
#
# Board files should follow this name structure:
#   board-<devicename>.<qca4019|qca9888|qca9889|qca9984|qca99x0|ipq8074>

file name is "board-tplink_eap620hd-v2.ipq6018.bin"

on complie should i be seeing the board-2.bin somewhere on the filesystem? (i am not)

2nd q:

Does this json have to match the error in dmesg path?

[ {
        "board": [ {
                "names": [
                        "bus=ahb,qmi-chip-id=0,qmi-board-id=255,variant=TP-Link-EAP620HD-v2"
                ],
                "data": "squashfs-root/lib/firmware/IPQ6018/hw1.0/bdwlan.bin"
        } ]
} ]

[ 11.488819] ath11k c000000.wifi: failed to fetch board data for bus=ahb,qmi-chip-id=0,qmi-board-id=255 from ath11k/IPQ6018/hw1.0/board-2.bin

^from that it looks like its expecting a folder path in "ath11k" ?

The JSON looks okay. The ipq-wifi package uses package conflicts and Kconfig selections to drop the correct file as board-2.bin.

What I suspect is happening is that the build picks the wrong board-2.bin file. Try a sha256sum on board-2.bin to make sure you got the correct one. You can also try hexdump -C or strings on the BDF to see which one was actually put in the rootfs.

For example:

# strings board-2.bin | head -n 3
QCA-ATH11K-BOARD
bus=ahb,qmi-chip-id=0,qmi-board-id=255,variant=TP-Link-EAP610-Outdoormmm

so on the rootfs/initramfs going with "find / -name *board-2.bin" doesnt return anything.

heres the strings on the file in path anyways:

strings package/firmware/ipq-wifi/files/board-tplink_eap620hd-v2.ipq6018.bin | head -n 3
QCA-ATH11K-BOARD
bus=ahb,qmi-chip-id=0,qmi-board-id=255,variant=TP-Link-EAP620HD-v2mm
LPTX\`dh

I mean the rootfs file:

# strings /lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin |head -n3
QCA-ATH11K-BOARD
bus=ahb,qmi-chip-id=0,qmi-board-id=255,variant=TP-Link-EAP610-Outdoormmm
LPTX\`dh

thats the issue - i cant see the board-2.bin anywhere on it.

root@OpenWrt:~# find / -name board-2.bin
root@OpenWrt:~# find / -name *.bin
root@OpenWrt:~# find / -name *.IPQ6018

i did find an open issue in github, perhaps could be source issue? I commented on there anyways if indeed related..

Is the package installed in the rootfs? Did you enable it in menuconfig?

# opkg list ipq-wifi*
ipq-wifi-tplink_eap610-outdoor - 2024.12.18~4b849214-r1

it appears not. Where would i see to add it in menuconfig? I briefly looked around the firmware submenu and did not see it there?

root@OpenWrt:~# apk list ipq-wifi*
WARNING: opening from cache https://downloads.openwrt.org/snapshots/targets/qualcommax/ipq60xx/packages/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/luci/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/packages/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/routing/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/telephony/packages.adb: No such file or directory
WARNING: opening from cache https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/video/packages.adb: No such file or directory

Also on boot this error is seen just wondering if this would need to be resolved before flashing the image after initramfs

Cannot parse config file '/etc/fw_env.config': No such file or directory
Failed to find NVMEM device
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level

^it does continue after this msg

Look under Firmware -> ath10k Board-Specific Overrides --->

looks like it was selected in menuconfig after finding it. So i guess that means this package somehow never got install on the complie? hmm

Is the selection a module <M>, or YES <*>? Module won't make it into the initramfs IIRC.

It was a β€œ*”

@Ansuel , @robimarko, we have another situation where an ipq-wifi-* package is selected in Kconfig, but board-2.bin is not put in the initramfs image. I am out of ideas. Do you have any suggestions?

I doubt this is possible if board-whatever.bin is actually in the package source.

Looking at the discussion which suggests putting it into package/firmware/ipq-wifi/files/board-tplink_eap620hd-v2.ipq6018.bin, well that wont work and this is why there is no board-2.bin being installed.

Try creating package/firmware/ipq-wifi/src and putting it there

still no luck it seems.

I created package/firmware/ipq-wifi/src/ and renamed board

file to board-2.bin and then compiled.

root@OpenWrt:~# find / -name board-2.bin
root@OpenWrt:~# ls -la /lib/firmware/
IPQ6018/       regulatory.db
root@OpenWrt:~# ls -la /lib/firmware/IPQ6018/
Notice.txt   m3_fw.b02    q6_fw.b00    q6_fw.b03    q6_fw.b07    q6_fw.mdt
m3_fw.b00    m3_fw.flist  q6_fw.b01    q6_fw.b04    q6_fw.b08
m3_fw.b01    m3_fw.mdt    q6_fw.b02    q6_fw.b05    q6_fw.flist
root@OpenWrt:~# dmesg | grep wifi
[   10.785344] ath11k c000000.wifi: ipq6018 hw1.0
[   10.785380] ath11k c000000.wifi: FW memory mode: 0
[   11.125205] ath11k c000000.wifi: qmi fail to get qcom,m3-dump-addr, ignore m3 dump mem req
[   11.130632] ath11k c000000.wifi: chip_id 0x0 chip_family 0x4 board_id 0xff soc_id 0xffffffff
[   11.138283] ath11k c000000.wifi: fw_version 0x25008f8e fw_build_timestamp 2024-03-01 03:54 fw_build_id WLAN.HK.2.5.0.1-03982-QCAHKSWPL_SILICONZ-3
[   11.249328] ath11k c000000.wifi: failed to fetch board data for bus=ahb,qmi-chip-id=0,qmi-board-id=255,variant=TP-Link-EAP620HD-v2 from ath11k/IPQ6018/hw1.0/board-2.bin
[   11.249395] ath11k c000000.wifi: failed to fetch board data for bus=ahb,qmi-chip-id=0,qmi-board-id=255 from ath11k/IPQ6018/hw1.0/board-2.bin
[   11.263598] ath11k c000000.wifi: failed to fetch board data for bus=ahb,qmi-chip-id=0,qmi-board-id=255 from ath11k/IPQ6018/hw1.0/board-2.bin
[   11.276073] ath11k c000000.wifi: failed to fetch board.bin from IPQ6018/hw1.0
[   11.288677] ath11k c000000.wifi: qmi failed to fetch board file: -12
[   11.295650] ath11k c000000.wifi: failed to load board data file: -12

No, do not rename it

gotcha, I seem to not be able to complie it now..

make[1]: *** [package/Makefile:183: /home/rspierz/Downloads/openwrt/staging_dir/target-aarch64_cortex-a53_musl/stamp/.package_compile] Error 2
make[1]: Leaving directory '/home/rspierz/Downloads/openwrt'
make: *** [/home/rspierz/Downloads/openwrt/include/toplevel.mk:233: world] Error 2

Compile with make -j1 V=s and post the whole error