This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TDA4AL-Q1: RGMII MAC TO MAC link failed Problems

Part Number: TDA4AL-Q1

Hi, TI Expert,

Our customer try to implement RGMII MAC to MAC communication, we do two experiments.

TEST 1. TDA4 & MCU TC397 connect to each other by ethernet switch (88Q5152)

Base on this block diagram, we already check TDA4 & TC397 ethernet connection success when ethernet switch as bridge 

Base on TEST1,signal chart as below,

Yellow (TDA4_TXC) -> TXC CLOCK, TDA4 transmit to 88Q5152 , 50MHZ

Blue (TDA4_RXC) -> RXC CLOCK, TDA4 receiver from 88Q5152, 125MHZ

Red (TC397_RXC) -> RXC CLOCK, TC397 receive clock from 88Q5152, 125MHZ

Green (TC397_TXC) -> TXC CLOCK, TC397 transmit clock to  88Q5152, 125MHZ

TEST 2. TDA4 & TC397 direct connect to each without ethernet switch (88Q5152)

I think we do not do any software modify for both side, and we found connection failed.

MAC to MAC should be like this

My Question : 

Q1 : Base on "TEST 1", Why TDA4 TXC clock is 50MHz?

Base on 1Gbps "fixed-link" rate setting, TXC clock should be 125MHZ, But it is very strange, Why ethernet communication is still working? 

Q2 : Base on "TEST 1", How to let TDA4 TXC clock works on 125MHZ?

Q3 : Base on "TEST 2", we try to dump "CPSW_CPSW_NU_CPSW_NU_CPSW_NU_STAT_x" register, Why do we not get any frame on port1?

eth1 means main domain RGMII1 for TDA4

if connection success(TEST 1), it should be like as below.

root@j721s2-evm:~# ./cpsw_all_reg_print
===============================
             Menu
===============================
0: Clear Stats : CPSW 2G
1: Print Stats : CPSW 2G
2: Print ALE : CPSW 2G
3: Print Enet CFG : CPSW 2G
4: Verify Enet Ctrl CFG : CPSW 2G
5: Print MAC Config : CPSW 2G
6: Clear Stats : CPSW MAIN 2G
7: Print Stats : CPSW MAIN 2G
8: Print ALE : CPSW MAIN 2G
9: Print Enet CFG : CPSW MAIN 2G
10: Verify Enet Ctrl CFG : CPSW MAIN 2G
11: Print MAC Config : CPSW MAIN 2G
Make your choice : 7
          STATS
--------------------------------
          PORT0 STATS
--------------------------------
STAT_0_RXGOODFRAMES              = 2e
STAT_0_RXBROADCASTFRAMES         = f
STAT_0_RXMULTICASTFRAMES         = 1f
STAT_0_RXOCTETS                  = 1d16
STAT_0_TXGOODFRAMES              = d
STAT_0_TXBROADCASTFRAMES         = 9
STAT_0_TXMULTICASTFRAMES         = 4
STAT_0_TXOCTETS                  = 90c
STAT_0_OCTETFRAMES64             = 7
STAT_0_OCTETFRAMES65T127         = 19
STAT_0_OCTETFRAMES128T255        = f
STAT_0_OCTETFRAMES256T511        = c
STAT_0_NETOCTETS                 = 2622
--------------------------------
          PORT1 STATS
--------------------------------
STAT_1_RXGOODFRAMES              = 15
STAT_1_RXBROADCASTFRAMES         = 9
STAT_1_RXMULTICASTFRAMES         = c
STAT_1_ALE_DROP                  = 8
STAT_1_RXOCTETS                  = ffc
STAT_1_TXGOODFRAMES              = 2e
STAT_1_TXBROADCASTFRAMES         = f
STAT_1_TXMULTICASTFRAMES         = 1f
STAT_1_TXOCTETS                  = 1d16
STAT_1_OCTETFRAMES64             = 7
STAT_1_OCTETFRAMES65T127         = 19
STAT_1_OCTETFRAMES128T255        = 17
STAT_1_OCTETFRAMES256T511        = c
STAT_1_NETOCTETS                 = 2d12
STAT_1_PORTMASK_DROP             = 8
STAT_1_ALE_UNKN_MLT              = c
STAT_1_ALE_UNKN_MLT_BCNT         = 87c
STAT_1_ALE_UNKN_BRD              = 9
STAT_1_ALE_UNKN_BRD_BCNT         = 780
STAT_1_TX_PRI_REG             [0]= 2e
STAT_1_TX_PRI_BCNT_REG        [0]= 1d16

if connection failed (TEST 2), it should be like as below.

STAT_0_RXGOODFRAMES              = 2b
STAT_0_RXBROADCASTFRAMES         = a
STAT_0_RXMULTICASTFRAMES         = 21
STAT_0_RXOCTETS                  = 1cea
STAT_0_OCTETFRAMES64             = 2
STAT_0_OCTETFRAMES65T127         = 16
STAT_0_OCTETFRAMES128T255        = 6
STAT_0_OCTETFRAMES256T511        = d
STAT_0_NETOCTETS                 = 1cea
--------------------------------
          PORT1 STATS
--------------------------------
STAT_1_TXGOODFRAMES              = 2b
STAT_1_TXBROADCASTFRAMES         = a
STAT_1_TXMULTICASTFRAMES         = 21
STAT_1_TXOCTETS                  = 1cea
STAT_1_OCTETFRAMES64             = 2
STAT_1_OCTETFRAMES65T127         = 16
STAT_1_OCTETFRAMES128T255        = 6
STAT_1_OCTETFRAMES256T511        = d
STAT_1_NETOCTETS                 = 1cea
STAT_1_TX_PRI_REG             [0]= 2b
STAT_1_TX_PRI_BCNT_REG        [0]= 1cea

I think we need any suggestion to debug this issue.

for example, register or software ...

Many Thanks

Gibbs