CPU用的是Armada-3720,内核是GitHub - MarvellEmbeddedProcessors/linux-marvell: Marvell Armada Linux kernel 里面18.12版本,uboot使用的是GitHub - MarvellEmbeddedProcessors/u-boot-marvell at u-boot-2018.03-armada-18.12。两路网口,一路是RGMII模式(lan1),另外一路是SGMII模式(lan2)。最近发现有时系统起来后用PC去ping lan2会ping不通,phy可以正常识别,执行ifconfig down/up也可以看到正常的打印信息。
另外起来后lan2 ping的通时就一直ping的通,也不会出现丢包、断掉现象(起来后ping的通时测试了两天时间左右)。rgmii的lan1一直比较稳定,未发现ping不通的时候,所以认为phy这侧应该是好的。总之感觉就是lan2初始化不稳定。
看了88e1512的datesheet后,发现18页的第18个寄存器可以配置一下看数据包的接收状态。