WiFi interface not appearing on Verdin iMX8MP SoM with Verdin Carrier Board

Hello Toradex team and Toradex community,

This is my first post on this forum, I hope this is a good way to write.

Hardware:

uname:

  • Linux verdin-imx8mp-14762752 5.4.193-rt74-5.7.0+git.f78299297185 #1-TorizonCore SMP PREEMPT_RT Thu Jul 28 15:38:36 UTC 2022 aarch64 aarch64 aarch64 GNU/Linux

Images tested:

  • TorizonOS 5.7.0 freshly installed from the TorizonEasyInstaller (5.7.1+build13)

Guest OS:

  • macOS (M1 Pro ARM64)
  • Linux ubuntu (VM x86_64)

Issue:

The WiFi interface/adapter on the SoM does not appear.

This issue is similar to: WiFi interface not appearing on Verdin iMX8MP SoM with Dahlia Carrier Board but the carrier board is different, I have the verdin. I tried most of the command with no luck… Here is what I did:

DEBUG

Connecting to the USB DEBUG (X66) on Linux, I can access it using minicom:

Welcome to minicom 2.8

OPTIONS: I18n
Port /dev/ttyUSB3, 16:47:36

Press CTRL-A Z for help on special keys


U-Boot SPL 2020.04-5.7.0+git.33bb8e968332 (Jan 01 1970 - 00:00:00 +0000)
DDRINFO: start DRAM init
DDRINFO: DRAM rate 4000MTS
Training FAILED
Quad die, dual rank failed, attempting dual die, single rank configuration.
DDRINFO: start DRAM init
DDRINFO: DRAM rate 4000MTS
DDRINFO:ddrphy calibration done
DDRINFO: ddrmix config done
Normal Boot
Trying to boot from BOOTROM
Find FIT header 0x4803a600, size 969
Need continue download 1024
Download 840704, total fit 842160
NOTICE:  BL31: v2.2(release):toradex_imx_5.4.70_2.3.0-g2fa8c6349e
NOTICE:  BL31: Built : 00:00:00, Jan  1 1970


U-Boot 2020.04-5.7.0+git.33bb8e968332 (Jan 01 1970 - 00:00:00 +0000)

CPU:   i.MX8MP[8] rev1.1 1600 MHz (running at 1200 MHz)
CPU:   Industrial temperature grade (-40C to 105C) at 41C
Reset cause: POR
DRAM:  4 GiB
MMC:   FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Model: Toradex Verdin iMX8M Plus Quad 4GB Wi-Fi / BT IT V1.1A, Serial# 14762752
Carrier: Toradex Verdin Development Board V1.1D, Serial# 11036909

 BuildInfo:
  - ATF 2fa8c63
  - U-Boot 2020.04-5.7.0+git.33bb8e968332

flash target is MMC:2
Net:   eth1: ethernet@30be0000, eth0: ethernet@30bf0000 [PRIME]
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
Verdin iMX8MP # printenv fdtfile
fdtfile=imx8mp-verdin-wifi-dev.dtb

So I have the following .dtb files available for in the ostree:

torizon@verdin-imx8mp-14762752:~$ ls -l /boot/ostree/torizon-0a8a42da4fdc2e71068301d1feeeefbc578cade3e7fb28499f
8a1dafcf733fff/dtb/
total 360
-rw-r--r-- 1 root root 87885 Jan  1  1970 imx8mp-verdin-nonwifi-dahlia.dtb
-rw-r--r-- 1 root root 88435 Jan  1  1970 imx8mp-verdin-nonwifi-dev.dtb
-rw-r--r-- 1 root root 88299 Jan  1  1970 imx8mp-verdin-wifi-dahlia.dtb
-rw-r--r-- 1 root root 88845 Jan  1  1970 imx8mp-verdin-wifi-dev.dtb
drwxr-xr-x 2 root root  4096 Jul 28 16:49 overlays
-rw-r--r-- 1 root root    86 Jan  1  1970 overlays.txt

In minicom, I setup the fdtfile to be imx8mp-verdin-wifi-dahlia.dtb and boot the device, when I can login with default user torizon

U-Boot 2020.04-5.7.0+git.33bb8e968332 (Jan 01 1970 - 00:00:00 +0000)

CPU:   i.MX8MP[8] rev1.1 1600 MHz (running at 1200 MHz)
CPU:   Industrial temperature grade (-40C to 105C) at 40C
Reset cause: POR
DRAM:  4 GiB
MMC:   FSL_SDHC: 1, FSL_SDHC: 2
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Model: Toradex Verdin iMX8M Plus Quad 4GB Wi-Fi / BT IT V1.1A, Serial# 14762752
Carrier: Toradex Verdin Development Board V1.1D, Serial# 11036909

 BuildInfo:
  - ATF 2fa8c63
  - U-Boot 2020.04-5.7.0+git.33bb8e968332

flash target is MMC:2
Net:   eth1: ethernet@30be0000, eth0: ethernet@30bf0000 [PRIME]
Fastboot: Normal
Normal Boot
Hit any key to stop autoboot:  0
Verdin iMX8MP # setenv fdtfile imx8mp-verdin-wifi-dahlia.dtb
Verdin iMX8MP # saveenv
Saving Environment to MMC... Writing to MMC(2)... OK
Verdin iMX8MP # boot

When I list the device using ip link, I don’t see a mlan0 or other devices… But I see one less ethernet1… And same goes for Bluetooth device.

Some details:

cat /proc/device-tree/toradex,product-id
0058

I hope you will be able to help me for this problem.

Kind regards,

M

Greetings @unablesalt,

I believe the issue here is related to this: TorizonCore Issue Tracker

So this issue is specifically related to Bluetooth since the Bluetooth interface changed to use UART between the 1.0 and the 1.1 hardware revision. However, this change required new firmware. Since there’s a single firmware for both WiFi and Bluetooth, WiFi is affected as well.

Now the issue as seen by the link, is that TorizonCore has not yet integrated this new firmware yet. I believe there is currently no version of TorizonCore that has this new firmware, though it is planned to be worked on.

As a test if I run the old Verdin i.MX8M Plus 1.0 with TorizonCore 5.7.0, I can see an mlan0 interface:

ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN mode DEFAULT group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0
3: ethernet0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:14:2d:68:82:23 brd ff:ff:ff:ff:ff:ff
4: can0: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
    link/can
5: can1: <NOARP,ECHO> mtu 16 qdisc noop state DOWN mode DEFAULT group default qlen 10
    link/can
6: mlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
    link/ether aa:26:67:c2:9a:88 brd ff:ff:ff:ff:ff:ff
7: uap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
    link/ether 0a:60:15:87:8d:5b brd ff:ff:ff:ff:ff:ff
8: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default
    link/ether 02:42:8c:f9:4f:8f brd ff:ff:ff:ff:ff:ff
9: br-ca8e85218d87: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
    link/ether 02:42:6f:36:31:9e brd ff:ff:ff:ff:ff:ff
11: vethdaf9b85@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-ca8e85218d87 state UP mode DEFAULT group default
    link/ether b2:89:5c:c9:56:1d brd ff:ff:ff:ff:ff:ff link-netnsid 0
13: veth103372f@if12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue master br-ca8e85218d87 state UP mode DEFAULT group default
    link/ether be:1b:b5:ea:56:25 brd ff:ff:ff:ff:ff:ff link-netnsid 1

With that I’m pretty confident that the issue is the lack of the newer firmware. As a check for yourself if you flash the device with our 5.7.0 BSP reference image I believe that OS has the updated firmware, so you can check if on that OS there is a WiFi network interface or not.

Best Regards,
Jeremias

@josep.tx thank you for the quick answer!
I have installed the 6.1.0 from ToradexEasyInstaller but I don’t have access to the mlan0 despite I use imx8mp-verdin-wifi-dahlia.dtb. So I believe it’s not ready yet. Do you have, by chance, an ETA for the new firmware as @jeremias.tx explained ?

@jeremias.tx thank you for your answer, I see that you plan to add support only for TorizonCore 6, but 6.1 doesn’t have it yet.

I flashed the board with the 5.7.0 BSP Reference Minimal Image and I can confirm that I can use the mlan0 interface. I can connect to any WiFi!

Thank you for your support!

M

I flashed the board with the 5.7.0 BSP Reference Minimal Image and I can confirm that I can use the mlan0 interface. I can connect to any WiFi!

Thank you for confirming this! Yes we plan to fix this issue in TorizonCore 6.X.Y, we plan to fix it soon we’ll try to notify you when such a fix is available.

@unablesalt I’ve been informed by our team that our recent nightly builds of TorizonCore 6.X.Y have WiFi working on Verdin i.MX8M Plus V1.1A. Please give this a try.

Currently this fix is only available in nightly builds, but it should be apart of our future releases going forward.

Best Regards,
Jeremias

Hello @jeremias.tx,

Thank you for your response.

I just tested it and it works for me, on this version:

$ uname -a
Linux verdin-imx8mp-14762752 5.15.77-6.2.0-devel+git.e64d72bccd6a #1-TorizonCore SMP PREEMPT Mon Jan 23 09:16:58 UTC 2023 aarch64 aarch64 aarch64 GNU/Linux

You can thanks the team for me :wink:

Have a good day!

M.

1 Like

Hi @unablesalt ,

Thank you for confirming.

Glad that it works now.

Best Regards
Kevin