Hi Amine_Ferchichi ,
Even if your kerenl is 4.14.98, compiling and loading driver are the same as that of L5.4.21.
Assume you are using imx-yocto-bsp and linux host it ubuntu 18.04.
1. compiling your board board bsp in yocto.
2. export cross-compiling toolchain from yocto and install it to /opt directory
On how to export the toolchain, refer to i.MX_Linux_User's_Guide.pdf.
4.5.12 How to build U-Boot and Kernel in standalone environment
3. downloading 8977 driver from our website if you have been authorized
after decompressing it, you will get 5 .tgz file and FwImage directory.
SD-BT-8977-U16-MMC-16.26.10.p98-C4X14114_V2-GPL-src.tgz
SD-BT-CHAR-8977-U16-MMC-16.26.10.p98-C4X14114_V2-GPL-src.tgz
SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-app-src.tgz
SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-MGPL-src.tgz
SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-mlan-src.tgz
Using these commands to decompress them at the current path.
# tar zxf SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-app-src.tgz
# tar zxf SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-MGPL-src.tgz
#tar zxf SD-UAPSTA-8977-U16-MMC-W16.68.10.p98-C4X16679_V2-mlan-src.tgz
#tar zxf SD-BT-8977-U16-MMC-16.26.10.p98-C4X14114_V2-GPL-src.tgz
# tar zxf SD-BT-8977-U16-MMC-16.26.10.p98-C4X14114_V2-GPL-src.tgz
SD-UAPSTA-BT-8977-U16-MMC-W16.68.10.p98-16.26.10.p98-C4X16679_V2-MGPL will be created.
# cd SD-UAPSTA-BT-8977-U16-MMC-W16.68.10.p98-16.26.10.p98-C4X16679_V2-MGPL
# ls
mbtc_src mbt_src wlan_src
Three directories can be found. mbt_src is for bluetooth, and wlan_src is for wifi
4. entering into wlan_src directory of driver.
# cd wlan_src
#source /opt/fsl-imx-xwayland/4.14-sumo/environment-setup-aarch64-poky-linux
#export KERNELDIR=/home/weidong/imx-yocto-bsp-4.14.98/build-xwayland/tmp/work/imx8mmevk-poky-linux/linux-imx/4.14.98-r0/build
(this is the directory of mine, for yours, you should check and change it to yours)
# unset LDFLAGS
# make
you will get 2 .ko files: mlan.ko & sd8xxx.ko .
copy these 2 files and firmware( sd8977_ble_v2.bin sd8977_bt_v2.bin sd8977_wlan_v2.bin sdsd8977_combo_v2.bin) to board ( /home/root)
5. On board
# cd ~/
# mkdir /lib/firmware/nxp
# cp ./*.bin /lib/firmware/nxp
# insmod mlan.ko
# insmod sd8xxx.ko 'drv_mode=7 ps_mode=2 auto_ds=2 cfg80211_wext=0xf fw_name=nxp/sdsd8977_combo_v2.bin cal_data_cfg=none'
Then use ifconfig -a to check wifi interface.
up to now, loading driver is done.
Try it, please!
Have a good day!
regards,
weidong