AnsweredAssumed Answered

imx6q with ksz8795 ethernet transmission abnormal stop

Question asked by 杰 王 on Aug 26, 2018
Latest reply on Aug 28, 2018 by igorpadykov

board: design by us refer to sabreLite-D
cpu: imx6q(MCIMX6Q6AVT10AD)
net switches: ksz8795(1 rgmii interface,4 10/100Mbps ports)
net interface: rgmii 1000Mbps
imx6q ENET_REF_CLK: from FPGA dedicated PLL clk output pin
memory device: emmc 4.4.1
ftp tools: FlashFXP

transceiving mode(rgmii):
up link: emmc to pc
down link: pc to emmc

switch function(phy):
port 1 to port 2


we use imx6q and ksz8795 (datasheet in KSZ8795 - Interface and Networking - Ethernet Switches - Microcontrollers and Processors ) as ethernet partner, the ksz8795's switch function is nomal when we make a 4GB file transceiving deal by FlashFXP between them. however when we use rgmii to transceiving 4GB file by FlashFXP,we find the transceiving encounter several abnormal stops(sometimes the transceiving is normal,sometimes it's abnormal, the transceiving seems to be unstable ), we print all register when the deal is in the normal transceiving (normal mode)and when the deal is stop (abnormal mode),someuseful information is as below.

 

1. in one deal there are phenomenons like this:
1.1 up link
normal mode :
imx6 register : 0x02188004 = 0x00000000(TXF=0 TXB=0 RXF=0), 0x02188008 = 0x2c000000(BABT=0 RXF=0 RXB=0)
phy register : 0x1e = 60(MDIX status= MDI-X)

 

abnormal mode :
imx6 register : 0x02188004 = 0x0e000000(TXF=1 TXB=1 RXF=1), 0x02188008 = 0x6f000000(BABT=1 RXF=1 RXB=1)
phy register : 0x1e = e0(MDIX status= MDI)

 

in this situation, when transceiving is stop, ksz8795 seems to make a MDI/MDI-X Auto-Negotiation,but we do
not change the transceiving environment, in additon ,we cannot understand why imx6q register have such
changes?


2. in another deal there are phenomenons like this:
2.1 up link
normal mode :
imx6 register : 0x02188004 = 0x00000000(TXF=0 TXB=0 RXF=0), 0x02188008 = 0x2c000000(BABT=0 RXF=0 RXB=0)
0x02188010 = 0x01000000(RADR=1), 0x02188014 = 0x01000000(TDAR=1)
phy register : no change

 

abnormal mode :
imx6 register : 0x02188004 = 0x0e000000(TXF=1 TXB=1 RXF=1), 0x02188008 = 0x6f000000(BABT=1 RXF=1 RXB=1)
0x02188010 = 0x00000000(RADR=0), 0x02188014 = 0x00000000(TDAR=0)
phy register : no change

 

in this situation,we cannot understand why imx6q register have such changes?


what can i do? which is abnormal? where is abnormal?
urgent waiting for your reply, thanks.

Outcomes