查看网卡信息

ethtool eth0

配置网卡信息

ethtool -s autoneg off speed 100 duplex full

lwip修改强制100M

enet_ethernetif.c ethernetif_phy_inif函数中修改phy_config phyConfig添加:

phyConfig.phyAddr=.....
phyConfig.autoNeg=false
phyConfig.duplex=kPHY_FullDuplex
phyConfig.speed =kPHY_Speed100M
phyConfig.enableEEE=false

同时添加autoNeg判断处理:

if (phyConfig.autoNet)
{
}
else
{
}

具体实现可参考原来的自协商,区别在于不添加autoneg判断

linux

也可以在phy的驱动中修改,在它的初始化函数中把强制100M的配置写入寄存器。