NXP i.MX8MM SOM WiFi Performance Issues

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

NXP i.MX8MM SOM WiFi Performance Issues

ソリューションへジャンプ
815件の閲覧回数
jeremyhammer
Contributor I

Hi everyone,

Hardware used: Evaluation Kit for the i.MX 8M Mini Applications Processor (8MMINILPD4-EVK)

NOTE: No custom HW, SW or Drivers is involved in this test.

We are having some performance issues with the WiFi on the NXP i.MX8MM SOM. This SOM has NXP 88W8987 WiFi with SDIO connection. This is an official NXP SOM made by NXP as part of the EVK.

The Linux image was compiled following the instructions in section 5 (Image Build) of UG10164 i.MX Yocto Project User's Guide Rev. LF6.6.52_2.2.0 - 16 December 2024. This is the latest "scarthgap" version. I also tried older versions based on "mickledore". The image built was imx-image-core.


WiFi bringup is based on the instructions in section 11.1 Connectivity for BT and Wi-Fi of UG10163 i.MX Linux User's Guide Rev. LF6.6.52_2.2.0 - 11 February 2025. See attached log wifi_bringup_and_connect.log (it errored this time on Connect and then succeeded on Retry, but it doesn't always error. Probably related to the same issue).

Connection works fine and it gets an IP no problem. However, the connection performance is really bad. When I ping it from my laptop I get horrible ping times, often over 0.5 seconds.

ping 192.168.1.43
PING 192.168.1.43 (192.168.1.43) 56(84) bytes of data.
64 bytes from 192.168.1.43: icmp_seq=1 ttl=64 time=589 ms
64 bytes from 192.168.1.43: icmp_seq=2 ttl=64 time=519 ms
64 bytes from 192.168.1.43: icmp_seq=3 ttl=64 time=439 ms
64 bytes from 192.168.1.43: icmp_seq=4 ttl=64 time=45.7 ms
64 bytes from 192.168.1.43: icmp_seq=5 ttl=64 time=588 ms
64 bytes from 192.168.1.43: icmp_seq=6 ttl=64 time=517 ms
64 bytes from 192.168.1.43: icmp_seq=7 ttl=64 time=115 ms
64 bytes from 192.168.1.43: icmp_seq=8 ttl=64 time=42.1 ms
64 bytes from 192.168.1.43: icmp_seq=9 ttl=64 time=361 ms
64 bytes from 192.168.1.43: icmp_seq=10 ttl=64 time=510 ms
64 bytes from 192.168.1.43: icmp_seq=11 ttl=64 time=105 ms
64 bytes from 192.168.1.43: icmp_seq=12 ttl=64 time=23.7 ms
64 bytes from 192.168.1.43: icmp_seq=13 ttl=64 time=567 ms
--- 192.168.1.43 ping statistics ---
14 packets transmitted, 13 received, 7.14286% packet loss, time 13012ms
rtt min/avg/max/mdev = 23.724/340.195/588.727/225.142 ms

To me this feels like interrupts in the driver aren't working or something. There is no dedicated interrupt pin so the interrupts would be from the SDIO module inside the i.MX8MM SOC. Note that if I flood it with traffic then ping times get better. This would support my theory that somehow interrupts aren't working right and the driver isn't being notified a packet arrived. Flooding it with traffic forces the driver to check (my guess) when it sends a packet.

I have run iperf3 for bandwidth testing and get around 200Mbit/s which is decent so it doesn't seem like it is a bandwidth bottleneck, it is somehow related to notification that a packet has arrived.

Has anyone seen WiFi performance issues like this? Has anyone used the i.MX8MM SOM/EVK WiFi and NOT had this issue?

Thanks for the help!

-Jeremy

0 件の賞賛
返信
1 解決策
743件の閲覧回数
Landon_Haugh
NXP Employee
NXP Employee

Replying here for documentation:

 

It seems that this is caused by power saving mode being on by default on the 88w8987 and 8M Mini EVK.

 

311c999c-9574-4cdd-8d4a-9dec68751815.jpg

 

Turn off power saving mode with:

iw dev mlan0 set power_save off

 

 

Landon

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
744件の閲覧回数
Landon_Haugh
NXP Employee
NXP Employee

Replying here for documentation:

 

It seems that this is caused by power saving mode being on by default on the 88w8987 and 8M Mini EVK.

 

311c999c-9574-4cdd-8d4a-9dec68751815.jpg

 

Turn off power saving mode with:

iw dev mlan0 set power_save off

 

 

Landon

0 件の賞賛
返信
733件の閲覧回数
jeremyhammer
Contributor I
I can confirm the following command solved the problem.

iw dev mlan0 set power_save off

Thanks Landon!
0 件の賞賛
返信