Hello there!
I'm working on a custom board (based on "14x14 EVK"), using LAN8720A for FEC0 (FEC1 disabled). In u-boot (2016.03 version), both dhcp and ping commands are working fine. But in Linux (4.1.15 version), besides PHY correctly identification, I can only see "TX bytes" on ifconfig, none for "RX bytes".
Curiously, when FEC0 isn't initialized in u-boot (for example, keeping LAN's hardware reset asserted), eth0 works fine on Linux, instantly getting a new IP from dhcp server!
So I'm kinda lost. Does anyone having this problem too?
Thanks a lot!
Thanks for the reference, jimmychan!
My porting process was correct, but I found that LAN - for some reason - must be software reseted on u-boot. I've added it on update_link function but it's only called when an eth routine need it (for example, dhcp command). So I've added to phy_config function too, and now it's working in Kernel. But curiously this workaround is needed only when u-boot and Kernel are compiled with Buildroot. If each one is compiled separately, I don't have this issue...
Thanks!
For your reference, this is a porting example for the PHY to u-boot and kernel. The modification steps are similar.
https://community.nxp.com/t5/i-MX-Processors-Knowledge-Base/Porting-KSZ9031-to-i-MX-BSP/ta-p/1112601
Hi,
How to write phy_register_fixup_for_uid of lan8720A, I did not find the relevant code