I am using the Marvel PHY with virtex2pro with plb_ethernet(10/100) emac. When I use the make my build without the lwip and use poll commands I can configure the PHY to 100M with no problems. When I put the LWIP back into the loop and add the PHY controls to the low_level_init to advertise 100M only it never negotiates to 100M properly. Using a network analyzer, I get a link but when I go to test mode where it will try to autonegotiate then it never links. I believe it is because it is trying to link at 1G and I am not capable of working at that rate but it does not negotiate to 100M. The PHY is hard coded to allow all rates and I am using UDP in LWIP. Can anyone offer any suggestions?
? Did you try running your standalone MDIO config code before starting LWIP? I had to manually configure the PHY so that it would run 100Mbps. If you go and download the Marvel date sheet you should be able to figure out which two copper registers you need to set. Ps remember to reset the phy register 0 after you set the speed. I have my home pc so I can't give you the solution.