Description: We are integrating the Murata LBES5PL2EL module (based on NXP IW612) with the Telechips platform and facing the following issues:
Kernel Integration Challenges:
NXP Kernel Version: 7 vs. Telechips Kernel Version: 5.4 causing incompatibility.
Compilation failures due to missing/modified kernel functions.
Need guidance on backporting NXP drivers to kernel 5.4.
Firmware Flashing Issues:
Timeout error: "Timeout for waiting header signature in fw_Change_Timeout function."
Download failure: "Download Error - Error code is -1."
Need assistance in debugging flashing failures.
Support Required:
Clarifications on power management signals (WL_EN, BT_EN, PMU_EN) and reset handling.
Best host interface selection (SDIO, UART, PCIe) and firmware loading process.
Confirmation on Bluetooth & Wi-Fi stack integration requirements.
Requesting NXP's support and guidance on resolving these integration and flashing issues. Any insights or recommended solutions would be highly appreciated.
Thank you.
Dear @JayKumar ,
Could you give me the following information on your side?
1. Is the Telechips platform ARM64 ARCH?
2. ARM gcc version
3. IW612 driver version
--When did you get it? from github or NXP website?
--Tell me driver & firmware version, please!
4. Do you have the source code of Telechips platform bsp including linux kernel?
Thanks!
Regards,
weidong
Dear @weidong_sun
Please find the requested information below:
Is the Telechips platform ARM64 ARCH?
ARM GCC Version:
IW612 Driver Version:
Do you have the source code of the Telechips platform BSP, including the Linux kernel?
Let me know if you need any further details.
Best regards,
Jay Kumar
Dear @JayKumar
Thanks for your detailed information!
Would you like to follow these steps to load WiFi driver?
(1) Getting the latest driver from github.
--driver
#git clone https://github.com/nxp-imx/mwifiex.git
#cd mwifiex
# git tag
# git checkout lf-6.6.52_2.2.0
(2) Getting firmware & wifi_mod_para.conf
--firmware
https://github.com/nxp-imx/imx-firmware/tree/lf-6.6.52_2.2.0/nxp/FwImage_IW612_SD
[Note]
--If you want to use WiFi & Bluetooth, Select "sduart_nw61x_v1.bin.se", please!
--If you want to use WiFi, Bluetooth & 802.15.4, Select "sd_w61x_v1.bin.se & uartspi_n61x_v1.bin.se" , please!
--wifi_mod_para.conf
https://github.com/nxp-imx/imx-firmware/tree/lf-6.6.52_2.2.0/nxp
Download it, please! in the file, there exist SDIW612 node, like below, pay attention to fw_name, firmware file's name is fixed here. if you want to use other firmware , here should be changed.
for example, if you want single wifi, and hope to change firmware, sduart_nw61x_v1.bin.se should be changed to "sd_w61x_v1.bin.se ".
SDIW612 = {
cfg80211_wext=0xf
max_vir_bss=1
cal_data_cfg=none
ps_mode=1
auto_ds=1
host_mlme=1
fw_name=nxp/sduart_nw61x_v1.bin.se
}
For uartspi_n61x_v1.bin.se, if users want to use 802.15.4 feature, the firmware should be used, but it can' t be loaded via wifi_mod_para.conf, NXP has a tool named fw_loader, it can download the firmware over UART interface to IW612 module.
(3) Copying firmware & wifi_mod_para.conf to /lib/firmware/nxp on your linux platform of board.
if there is nxp folder on your board, create it, please! then copy firmware & wifi_mod_para.conf to the folder.
(4) Building WiFi driver
-- Building linux kernel source code of Telechips platform.
-- Building WiFi driver
# export KERNELDIR= .../your built kernel source code above
Then set your cross compile environment, which is determined by your linux bsp.
[Note]
Please check if wlan_src/Makefile of wifi driver needs to be changed according to your cross compile environment!
After building wifi driver is done, you will get 2 .ko files:
mlan.ko & moal.ko
copy them to a folder of your boards, for example /home/xxxx/iw612
(5) Loading wifi driver
# cd ~/iw612
# insmod mlan.ko
# insmod moal.ko mod_para=nxp/wifi_mod_para.conf
Then you will know if the driver can be loaded successfully.
if errors occurs , please get linux logs using dmesg, and share it with me!
Thanks!
Regards,
weidong