We encountered some problems when debugging the network port of imx8m plus. The phy chip used in the original demo board was rtl8211. We replaced the kz9131 chip of microchip on our own board. The hardware connection was basically unchanged. The mdio address and the software were modified. The reset pin of phy is added, and the corresponding driver is enabled in the kernel (this driver is integrated in the kernel by the original factory). After running on the board, it is found that the eth0 ping packet will be lost; the eth1 connection status is unstable and keeps on Switching back and forth between link and down, querying the log shows that both phys have been correctly identified, and no error is reported when the driver is loaded.
What is the cause of this state, and is there a solution?
The screenshots of the kernel log and ping package are attached below. The test method is to set the ip on the board eth0 to 192.168.0.1 eth1: 192.168.3.1, and ping each other on different network ports between the PC and the PC.
Hi Peng
for instability issue one can check timings described in sect.3.8.3.3 RGMII signal switching specifications
i.MX 8M Plus Applications Processor Datasheet for Consumer Products
and adjust kz9131 internal delays, configured with "DATA/CLOCK PAD SKEW REGISTER"s.
Best regards
igor