Other Parts Discussed in Thread: DP83869
Tool/software:
We are developing a media converter that has to be able run one port at 100 and the other at 1000 (also 100-100 and 1000-1000). The built-in media converter mode of the DP83869 does not work for us because it is either 100-100 or 1000-1000.
So I've come up with the idea of connecting 2 DP83869s via the RGMII interface and configure one as RGMII to Copper and the other RGMII to Fiber. First of all, is this a feasible solution?
I have two DP83869EVMs and I have connected them together like this:
RX_CTRL -> TX_CTRL
TX_CTRL -> RX_CTRL
RX_D3 -> TX_D3
TX_D3 -> RX_D3
RX_D2 -> TX_D2
TX_D2 -> RX_D2
RX_D1 -> TX_D1
TX_D1 -> RX_D1
RX_D0 -> TX_D0
TX_D0 -> RX_D0
RX_CLK -> GTX_CLK
GTX_CLK-> RX_CLK
GND -> GND
For the moment I am trying to make everithing rin at 1000, so straps are configured like this:
Copper board: OPMODE[2..0] = 000
Fiber board: OPMODE[2..0] = 001
Now I connect the copper board to a raspi running iperf server, the fiber board to a commercially available media converter and this media converter to another raspi running iperf client.
With this set-up, connection is not established, although some activity on the LEDs of both boards indicates that they are talking to each other, since the LEDs blink simultaneously.
I have read that in this scenario clocks need to be delayed. I have tried all combinations on both boards of register RGMII_CTRL[1..0] (RGMII Transmit Clock Delay and RGMII Receive Clock Delay) without success.
What might I be doing wrong?
Regards