Amadeus
December 17, 2019, 5:40am
1
Sorry, I'm poor in English.
I have a RuiJie_rg-mtfi-m520, device description:
cpu:ipq8064
ram:2GB DDR2
switch:qca8337
wifi:qca9882
emmc:4GB
I tried to flash into openwrt, but the wireless didn't work.
Someone suggested that I should extract the original firmware, send it up and ask you for help, add it to the open source firmware.
The original /lib/firmware: http://tmp.link/f/5df86a1211acb
The original firmware download URL:https://www.ruijienetworks.com/support/documents/slide_63087
Thanks for your help.
LGA1150
December 17, 2019, 2:28pm
2
QCA stock wireless driver's firmware is incompatible with ath10k.
Do you have the boardData file from the stock firmware?
jeff
December 17, 2019, 6:58pm
4
You'll likely need to look at the installed image. The zip linked is only a few files and not complete firmware (mainly only firmware for the QCA9888 and NSS cores).
duo8
December 18, 2019, 12:22am
5
There's a full firmware image on the manufacturer's site, the zip linked is all there is under /lib/firmware.
jeff
December 18, 2019, 12:28am
6
I'd try extracting it using binwalk
(or looking on the running device) and looking for it under /lib/firmware/
or possibly with find -iname '*board*'
On the QSDK-based, Linksys EA8300, OEM firmware, they are under
/lib/firmware/IPQ4019/
/lib/firmware/QCA9888/
Expand to see `find` results for OEM EA8300
$ find . -iname '*board*'
./lib/firmware/QCA9888/IC/boarddata_2.bin
./lib/firmware/QCA9888/IC/boardData_2_0_QCA9888_5G_Y9690_SBS_HB.bin
./lib/firmware/QCA9888/IC/boarddata_0.bin
./lib/firmware/QCA9888/IC/boarddata_1.bin
./lib/firmware/QCA9888/EU/boarddata_0.bin
./lib/firmware/QCA9888/EU/boarddata_1.bin
./lib/firmware/QCA9888/EU/boardData_2_0_QCA9888_5G_Y9690_SBS_HB.bin
./lib/firmware/QCA9888/EU/boarddata_2.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_Y9690_SBS_HB.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_Y9690.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_YA105.bin
./lib/firmware/QCA9888/hw_2/boarddata_0.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_Y9484.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_YA841.bin
./lib/firmware/QCA9888/hw_2/boardData_2_0_QCA9888_5G_Y9582.bin
./lib/firmware/QCA9888/hw_2/boarddata_1.bin
./lib/firmware/QCA9888/FCC/boarddata_2.bin
./lib/firmware/QCA9888/FCC/boarddata_0.bin
./lib/firmware/QCA9888/FCC/boarddata_1.bin
./lib/firmware/QCA9888/FCC/boardData_2_0_QCA9888_5G_Y9690_SBS_HB.bin
./lib/firmware/QCA9888/AH/boardData_2_0_QCA9888_5G_Y9690_SBS_HB.bin
./lib/firmware/QCA9888/AH/boarddata_1.bin
./lib/firmware/QCA9888/AH/boarddata_0.bin
./lib/firmware/QCA9888/AH/boarddata_2.bin
./lib/firmware/IPQ4019/AH/boardData_1_0_IPQ4019_DK04_5G.bin
./lib/firmware/IPQ4019/AH/boarddata_0.bin
./lib/firmware/IPQ4019/AH/boardData_1_0_IPQ4019_DK04_2G.bin
./lib/firmware/IPQ4019/AH/boarddata_1.bin
./lib/firmware/IPQ4019/hw_1/boarddata_1.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK03_wifi0.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK05_2G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK04_5G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK04_2G_neg_pwr.bin
./lib/firmware/IPQ4019/hw_1/boarddata_0.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK07_wifi0_5G_HB.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK03_wifi1.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK01_2G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK06_5G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK04_5G_neg_pwr.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK07_wifi1_5G_LB.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK05_5G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_Y9803_wifi0.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_YA131_wifi0.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK07_wifi0_2G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_YA131_wifi1.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK06_2G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK01_5G.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_Y9803_wifi1.bin
./lib/firmware/IPQ4019/hw_1/boardData_1_0_IPQ4019_DK04_2G.bin
./lib/firmware/IPQ4019/EU/boardData_1_0_IPQ4019_DK04_5G.bin
./lib/firmware/IPQ4019/EU/boarddata_1.bin
./lib/firmware/IPQ4019/EU/boarddata_0.bin
./lib/firmware/IPQ4019/EU/boardData_1_0_IPQ4019_DK04_2G.bin
./lib/firmware/IPQ4019/IC/boardData_1_0_IPQ4019_DK04_5G.bin
./lib/firmware/IPQ4019/IC/boarddata_0.bin
./lib/firmware/IPQ4019/IC/boardData_1_0_IPQ4019_DK04_2G.bin
./lib/firmware/IPQ4019/IC/boarddata_1.bin
./lib/firmware/IPQ4019/FCC/boardData_1_0_IPQ4019_DK04_2G.bin
./lib/firmware/IPQ4019/FCC/boardData_1_0_IPQ4019_DK04_5G.bin
./lib/firmware/IPQ4019/FCC/boarddata_1.bin
./lib/firmware/IPQ4019/FCC/boarddata_0.bin
duo8
December 18, 2019, 12:33am
7
find results for the firmware image:
./usr/sbin/boardData_3_QC98XX_xb141_gld.bin
./usr/sbin/boardData_3_QC98XX_cus261_gld.bin
./usr/sbin/boardData_2_QC98XX_xb140_gld.bin
./usr/sbin/boardData_2_QC98XX_cus223_gld.bin
./usr/sbin/boardData_2_QC98XX_cus223_523_gld.bin
./lib/firmware/AR9888/hw.2/fakeBoardData_AR6004.bin
jeff
December 18, 2019, 12:39am
8
If you run the OEM firmware, it might copy one or more of those into position under /lib/firmware/
(or, as I now see, somewhere else)
There might also be a script that does that. I found it in the EA8300 firmware with, for example
$ fgrep -r QCA98 .
./etc/system/wait:if [ ! -d /tmp/QCA9888 ]; then
./etc/system/wait: mkdir /tmp/QCA9888
./etc/system/wait: cp -r /lib/firmware/QCA9888/hw_2 /tmp/QCA9888/hw.2
./etc/system/wait:cp /lib/firmware/QCA9888/FCC/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/IC/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/AU/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/AH/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/AP/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/EU/* /tmp/QCA9888/hw.2
./etc/system/wait: cp /lib/firmware/QCA9888/PH/* /tmp/QCA9888/hw.2
Binary file ./lib/modules/3.14.77/qca_ol.ko matches
Amadeus
December 18, 2019, 4:20pm
10
I found some files called boardData,link:http://tmp.link/f/5dfa51678a0b3
I launching the wirelss, but ath10k always want to load pre-cal-pci-xxx.bin and firmware-x.bin, cal-pci-xxx.bin and firmware-2.bin is right, too much time wasted on startup, how can I do?Can anyone help me?Thanks.