Verdin IMX8mp, IVY board torizon ver 7.2.0
if I use ifconfig -a, only one ethernet port comes up, even when both are plugged into a switch with DHCP server. In the documentation it says that it requires a PHY but most switches have one so it should still work, even with the reduced signals. However, I don’t seem to have the magic touch. What is the secret to get it to work??
Thanks in Advance
Steve
Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!
Did you like my answer?

Hello,
Thank you for reaching out with your question about the Ethernet ports on the Ivy carrier board. The board indeed features two Gigabit Ethernet ports, but they have different configurations:
- The first Ethernet port utilizes a media-dependent interface with the PHY located on the module itself.
- The second Ethernet port employs RGMII (Reduced Gigabit Media-Independent Interface), which requires a PHY on the carrier board. This port is independent of the switch’s PHY and needs a physical PHY component on the carrier board.
For the Verdin iMX8M Plus, the Ivy carrier board supports both Ethernet ports, and it includes the necessary PHY for both to function properly.
If you’re only seeing one port with ifconfig -a
, this might indicate a configuration issue. Here are some steps you can take to troubleshoot:
- Verify the physical connections and check the LEDs on both Ethernet ports to ensure they are functioning.
- Review the kernel configuration to confirm that the second Ethernet interface is enabled.
- Examine the device tree configuration for the RGMII interface to ensure it is correctly set up.
For optimal software compatibility, it is recommended to use the KSZ9131RNX from Microchip as the Ethernet PHY.
I hope this helps resolve your issue. If you have further questions, feel free to reach out.
Best regards,
Toradex AI Assistant
As AI mentioned, the Verdin module includes only one onboard Ethernet PHY. The PHY for the second Ethernet port (DP83867) is located on the Ivy carrier board. However, it is not supported out of the box in the Toradex-provided OS images. To enable it, you will need to:
- Enable the corresponding driver by setting
CONFIG_DP83867_PHY
in the kernel configuration.
- Recompile the kernel.
- Modify the Device Tree accordingly.
Thank you for your answer.
Since this is something that other IVY and IVY Plus buyers might need/use, is there any published information for the device tree changes?
“Please refer to this section of the Ivy Device Tree.”
Apparently, things have changed significantly since I last used builder. Looking at the .dtsi file you mention, which is included in building it, it would seem that the device tree already has the second ethernet in the tree? I tried adding just those few lines as an overlay, but got a message saying I couldn’t add any more modules. So, do I just have to recompile the kernel after setting the config define?
The 7.2.0 and latest OS releases already include precompiled Device Tree blobs: imx8mp-verdin-wifi-ivy.dtb
and imx8mp-verdin-nowifi-ivy.dtb
. You can simply select the one you need by updating the relevant U-Boot environment variables to load the desired DTB.
I am sorry Alex, where do I find this information regarding the environment variables?
Simply run the printenv
command at the U-Boot console.
Basically, you need to set the fdtfile
environment variable to the desired Device Tree blob—for example, imx8mp-verdin-nowifi-ivy.dtb
.
Hi Alex,
Yes, it got it to build, and I used the kernel boot variables to set the fdtfile variable in the tcbuild.yaml file. However, it didn’t work. I see it applying the overlays, two hdmi and one spidev. Nothing else.
In the tcbuild.yaml file, I did this:
kernel:
# >> Custom kernel arguments.
arguments:
- fdtfile=imx8mp-verdin-nowifi-ivy.dtb
When I printenv in u-boot, it shows fdtfile=imx8mp-verdin-wifi-dev.dtb. I tried changing (and saving ) it in U-Boot, but it won’t boot properly that way, i.e stays in U-Boot due to not loading any device-trees.
I am building a 7.2.0 quarterly image. Should I be using 7.3?
OK, I got this working by telling it to use imx8mp-verdin-wifi-ivy.dtb, as the custom device-tree in the tcbuild.yaml file. The second port now shows up and as far as I can tell, everything is working.