Hi, I’m the Toradex AI Assistant. The Toradex Support team will follow up with you shortly!
Did you like my answer?
Hello,
The issue you’re experiencing with the Ethernet PHY not connecting in Linux, despite functioning in U-Boot, likely stems from the configuration in the Linux device tree or the power management setup.
The message “deferred probe pending” typically indicates that the driver is waiting for a resource, such as a regulator, to become available. Since you’ve mentioned that the PHY is directly powered and not using a peripheral enable signal, it’s possible that the device tree configuration needs to be adjusted to reflect this setup.
Here are some steps you can take to troubleshoot and resolve the issue:
-
Device Tree Configuration: Ensure that the device tree correctly defines the PHY and any associated power control signals. If the PHY is directly powered, you may need to remove or modify any references to a power enable GPIO in the device tree.
-
Power Supply Verification: Double-check that the power supply to the PHY is stable and meets the required voltage and current specifications. Any instability could cause the PHY to not initialize correctly.
-
Driver and Kernel Logs: Check the kernel logs (
dmesg
) for any additional error messages related to the Ethernet interface. This might provide more insight into what the driver is waiting for. -
U-Boot vs. Linux Configuration: Since the PHY works in U-Boot, compare the U-Boot and Linux configurations to identify any differences. This might include PHY initialization sequences or specific settings that are not being applied in Linux.
-
Activity LEDs: While this might be a separate issue, ensure that the LED configuration in the device tree matches your hardware setup.
By focusing on these areas, you should be able to identify and resolve the issue preventing the PHY from connecting in Linux. If the problem persists, further investigation into the specific driver and hardware interactions may be necessary.
Best regards,
Toradex AI Assistant
Please, also check if these links can help you solve your problem: