Hello everyone,
I’ve been experimenting with the BeagleBone Black and the Yocto Project (Scarthgap release). I built a minimal image and wanted to use it for a project, but I’m running into issues with the Ethernet network interface.
When reading the serial output during boot, I get the following error:
Configuring network interfaces... cpsw-switch 4a100000.switch: starting ndev. mode: dual_mac
cpsw-switch 4a100000.switch: phy "/ocp/interconnect@4a000000/segment@0/target-module@100000/switch@0/mdio@1000/ethernet-phy@0" not found on slave 0
udhcpc: started, v1.36.1
udhcpc: broadcasting discover
udhcpc: broadcasting discover
udhcpc: broadcasting discover
After boot, the eth0
interface appears to be present, but it doesn’t receive an IP address. I’m unable to ping the board or reach any external network from it. Restarting DHCP manually doesn’t help either.
I booted a Debian image on the same board, and Ethernet works perfectly, so I believe the issue is related to something missing in the Yocto build. I dug around a bit and found that this issue was somewhat common in the past but appears to have been fixed since.
In this mailing list post, there’s a mention of a new device tree path . I also tried using the same U-Boot version as the one on the Debian image (U-Boot 2022.04-ge0d31da5
), but I only managed to get as close as the v2022.04 tag from the beagleboard/u-boot repo.
I suspect I’m missing something, maybe a kernel config option, a device tree overlay, or something related to the PHY setup. If anyone has any ideas or pointers, I’d greatly appreciate the help.
Thanks in advance!