Hi, @Kousik
About question1: In our design we are not using IW416 WI-FI to Host wake-up feature. Is this wake up line mandatory?
I did a test in my local side and confirmed that this feature is not mandatory.
I also checked with our colleague, our answer is same.
My test is: comment this in our device tree(imx8mp-evk-usdhc1-m2.dts) like below:
&usdhc1 {
pinctrl-names = "default", "state_100mhz", "state_200mhz";
pinctrl-0 = <&pinctrl_usdhc1>;
pinctrl-1 = <&pinctrl_usdhc1_100mhz>;
pinctrl-2 = <&pinctrl_usdhc1_200mhz>;
keep-power-in-suspend;
non-removable;
wakeup-source;
mmc-pwrseq = <&usdhc1_pwrseq>;
fsl,sdio-async-interrupt-enabled;
status = "okay";
//wifi_wake_host {
//compatible = "nxp,wifi-wake-host";
//interrupt-parent = <&gpio2>;
//interrupts = <9 IRQ_TYPE_LEVEL_LOW>;
//interrupt-names = "host-wake";
//};
};
Then compile Linux BSP Kernel to Image and imx8mp-evk-usdhc1-m2.dtb, after that, flashed it into I.MX8MP EVK board.
Insert M.2 interface IW612 Module to I.MX8MP EVK board M.2 interface, and boot it up.
It can boot up successfully and IW612 Wi-Fi driver can be loaded successfully and check Wi-Fi interface is boot up correctly like below:
===================
oot@imx8mpevk:~# insmod mlan.ko
root@imx8mpevk:~# insmod moal.ko mod_para=nxp/wifi_mod_para.conf
[ 231.427796] wlan: Loading MWLAN driver
[ 231.432544] wlan: Register to Bus Driver...
[ 231.437388] vendor=0x0471 device=0x0205 class=0 function=1
[ 231.442971] Attach moal handle ops, card interface type: 0x109
[ 231.448819] rps set to 0 from module param
[ 231.454548] SDIW612: init module param from usr cfg
[ 231.459495] card_type: SDIW612, config block: 0
[ 231.464042] cfg80211_wext=0xf
[ 231.467022] max_vir_bss=1
[ 231.469655] cal_data_cfg=none
[ 231.472623] ps_mode = 1
[ 231.475077] auto_ds = 1
[ 231.477538] host_mlme=enable
[ 231.480422] fw_name=nxp/sduart_nw61x_v1.bin.se
[ 231.484892] SDIO: max_segs=128 max_seg_size=65535
[ 231.489610] rx_work=1 cpu_num=4
[ 231.492769] Attach mlan adapter operations.card_type is 0x109.
[ 231.498985] wlan: Enable TX SG mode
[ 231.502500] wlan: Enable RX SG mode
[ 231.509038] Request firmware: nxp/sduart_nw61x_v1.bin.se
[ 231.793771] Wlan: FW download over, firmwarelen=918016 downloaded 841816
[ 233.197579] WLAN FW is active
[ 233.200562] on_time is 232959367413
[ 233.223830] VDLL image: len=76200
[ 233.227495] fw_cap_info=0x487cff03, dev_cap_mask=0xffffffff
[ 233.233109] uuid: 170d362e9a0e5b939e6b9764d263e676
[ 233.237921] max_p2p_conn = 8, max_sta_conn = 16
[ 233.261117] Register NXP 802.11 Adapter mlan0
[ 233.265760] wlan: uap%d set max_mtu 2000
[ 233.271405] Register NXP 802.11 Adapter uap0
[ 233.281421] Register NXP 802.11 Adapter wfd0
[ 233.285783] wlan: version = SDIW612---18.99.2.p19.15-MM6X18398.p9-(FP92)
[ 233.295015] wlan: Register to Bus Driver Done
[ 233.299670] wlan: Driver loaded successfully
root@imx8mpevk:~#
root@imx8mpevk:~# ifconfig -a
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.50.241 netmask 255.255.255.0 broadcast 192.168.50.255
inet6 fe80::204:9fff:fe08:3a00 prefixlen 64 scopeid 0x20<link>
ether 00:04:9f:08:3a:00 txqueuelen 1000 (Ethernet)
RX packets 2050 bytes 2545472 (2.4 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 389 bytes 46036 (44.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 00:04:9f:08:3a:01 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 223
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 96 bytes 8180 (7.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 96 bytes 8180 (7.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
mlan0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether d0:17:69:ee:71:4e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
uap0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether d2:17:69:ee:72:4e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wfd0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether d2:17:69:ee:71:4e txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
=====================
Best regards,
Christine.