MT7615 on x86/64 - does not load firmware

I know this is a Banana Pi forum, but maybe someone can help anyway.

I am using a BPI-MT7615 mini pcie card in a Futro 940 (Intel Celeron J5005) and trying to get it working with OpenWRT. The card is detected but does not load the existing firmware from /lib/firmware/mediatek/.

Same problem with OpenWRT (23.05.5) as well as with Xubuntu 24.04.

Available firmware files:

/lib/firmware/mediatek# ls -al

drwxr-xr-x    2 root     root          4096 Dec  9 15:59 .
drwxr-xr-x    6 root     root          4096 Sep 23 12:34 ..
-rw-r--r--    1 root     root        122644 Sep 23 12:34 mt7615_cr4.bin
-rw-r--r--    1 root     root        457992 Sep 23 12:34 mt7615_n9.bin
-rw-r--r--    1 root     root         11102 Sep 23 12:34 mt7615_rom_patch.bin

dmesg and lspci:

# dmesg | grep mt76

[    8.821026] mt7615e 0000:02:00.0: enabling device (0000 -> 0002)
[    8.831067] mt7615e 0000:02:00.0: Invalid MAC address, using random address 0a:3b:0e:ae:53:43
[    8.843397] mt7615e 0000:02:00.0: registering led 'mt76-phy0'
[    8.961338] mt7615e 0000:02:00.0: Firmware is not ready for download
# lspci

02:00.0 Unclassified device [0002]: MEDIATEK Corp. MT7615E 802.11ac PCI Express Wireless Network Adapter

Thanks, Klaus

have you built driver as module to be loaded AFTER root filesystem is mounted?

Good point. The driver module are installed via the openwrt package kmod-mt7615e. I tried to manually remove the kernel module and load it again:

rmmod mt7615e
modprobe mt7615e

For a moment, it looked much better:

[    9.119677] mt7615e 0000:02:00.0: enabling device (0000 -> 0002)
[    9.129696] mt7615e 0000:02:00.0: Invalid MAC address, using random address 22:2f:c2:76:60:4e
[    9.142153] mt7615e 0000:02:00.0: registering led 'mt76-phy0'
[    9.249645] mt7615e 0000:02:00.0: HW/SW Version: 0x8a108a10, Build Time: 20180518100604a
[    9.297083] mt7615e 0000:02:00.0: N9 Firmware Version: _reserved_, Build Time: 20200814163649
[    9.319475] mt7615e 0000:02:00.0: CR4 Firmware Version: _reserved_, Build Time: 20190415154149

But after I rebooted and tried the process again, same problem:

[   66.655275] mt7615e 0000:02:00.0: Invalid MAC address, using random address 42:dd:32:40:5a:9a
[   66.668466] mt7615e 0000:02:00.0: registering led 'mt76-phy1'
[   66.749027] ieee80211 phy1: Selected rate control algorithm 'minstrel_ht'
[   66.749046] ieee80211 phy1: copying sband (band 1) due to VHT EXT NSS BW flag
[   66.750016] mt7615e 0000:02:00.0: Firmware is not ready for download

Don’t know why it worked just one time.

maybe the card needs a bit more time to get stable? can you after reboot again unload module and reload it?

I have tried it manually several times after a reboot. No chance.

Maybe a power consumption issue? I use the card in a ngff m.2 slot with an adapter.

Okay apparently the kernel module must be removed before a reboot. Now it seems that the firmware is loaded properly on boot. Interesting behavior.

@frank-w

I have read in another thread that if I want to increase the TX power to 20dBm I have to load a custom eeprom and patch the kernel module first so that the custom eeprom file can be loaded?

Afair yes…i updated a patch loading eeprom from a file,but where to get this file what you have to change there idk