BeagleV-Ahead U-Boot Netboot: IP stack not working

Hello,

I am trying to get some kind of netboot (e.g. nfsboot, tftpboot, …) working via U-Boot on my BeagleV-Ahead.
I am using the following U-Boot fork: https://git.beagleboard.org/beaglev-ahead/beaglev-ahead-u-boot

However, IP/DHCP/… does not seem to work at all. The Ethernet PHY autonegotiation seems to work fine but everything IP related does not. According to this post, this limitation is known.

My question now is: Is there another sensible way to achieve netboot (esp. pulling a kernel and not just the rootfs)? Is IP support for U-Boot a planned feature? What exactly needs to be done here?

Some time has passed since I submitted this post until it was approved. In the meantime, I was able to resolve the issue. The problem was that the installed Ethernet PHY was not yet linked to the correct driver. With the following patch, IP in U-Boot works again:

diff --git a/drivers/net/phy/realtek.c b/drivers/net/phy/realtek.c
index 8f0a897a46..63e3a5fe10 100644
--- a/drivers/net/phy/realtek.c
+++ b/drivers/net/phy/realtek.c
@@ -397,12 +397,27 @@ static struct phy_driver RTL8211F_driver = {
        .writeext = &rtl8211f_phy_extwrite,
 };
 
+/* Support for RTL8211F PHY */
+static struct phy_driver RTL8211FVD_driver = {
+       .name = "RealTek RTL8211F-VD",
+       .uid = 0x1cc878,
+       .mask = 0xffffff,
+       .features = PHY_GBIT_FEATURES,
+       .probe = &rtl8211f_probe,
+       .config = &rtl8211f_config,
+       .startup = &rtl8211f_startup,
+       .shutdown = &genphy_shutdown,
+       .readext = &rtl8211f_phy_extread,
+       .writeext = &rtl8211f_phy_extwrite,
+};
+
 int phy_realtek_init(void)
 {
        phy_register(&RTL8211B_driver);
        phy_register(&RTL8211E_driver);
        phy_register(&RTL8211F_driver);
        phy_register(&RTL8211DN_driver);
+       phy_register(&RTL8211FVD_driver);
 
        return 0;
 }
1 Like

Did you feed this back to the build-system as a MR?

Other people might benefit from your discovery!

Since the linked U-Boot fork seems to be abandoned and since the new PHY is already implemented in the mainline U-Boot, I hope this post will help people who are also using the “old” fork to get on the right track.

1 Like

way to go…

Good investigative work there, sir. I may just try it out!

Your call. It’ll be buried in the noise in a few weeks, so…