We have a custom board with LS1046A Processor . There is Marvell 88E1512 phy(RGMII1 - fm1-mac3 ) connected to EC1 port of the processor similar to the LS1046ardb Kit.
The phy works fine at uboot level and even checked for file transfer with tftp protocol.
But when we try to ping at Linux level, It is intermittent. it works sometimes but most of the time , its not working.
When we check in wireshark in PC, I can see arp request from the board. and even though PC is sending arp reply , I think board is not receiving that packet.
Is receive based on interrupt? as we have connected it to different irq00 which is different from Kit where it is connected to irq08.
If the phy works normally in u-boot, it means there is no hardware problem on your custom board.
According to your description, it seems that phy driver in Linux Kernel is not compatible with Marvell 88E1512 phy.
Please check your Linux Kernel configuration file(.config) whether CONFIG_MARVELL_PHY is enabled. In LSDK2012 default Kernel configuration file it is configured as compiling to Kernel module.
CONFIG_MARVELL_PHY=y
we have configured CONFIG_MARVELL_PHY=y and still error exists.
Please modify the dts file as the following
mdio@fc000 {
rgmii_phy1: ethernet-phy@1 {
compatible = "marvell,88e1510";
reg = <0x1>;
};
rgmii_phy2: ethernet-phy@2 {
compatible = "marvell,88e1510";
reg = <0x2>;
};
No change. The problem still exists.
Please contact Marvell to ask for PHY driver for 88E1512 in Linux Kernel.
OK