Ethernet problem solving on TC23x

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
Hello!

I had the same problem with Ethernet. It worked in loopback mode, but by connection with PC with cross-over cable, it hanged. I have found, that this example from
iLLD doesn't work correctly wtih PHY driver on my board. The problem is, that there's no data on MDIO line because of wrong configuration of port. To change that, you need
change a couple of lines at IfxEth.c.

Firstly, you need uncomment lines in function IfxEth_setupRmiiOutputPins():
#if 1
IfxPort_setPinPadDriver(mdc->pin.port, mdc->pin.pinIndex, speedGrade);
IfxPort_setPinPadDriver(mdio->pin.port, mdio->pin.pinIndex, speedGrade);
#endif


And secondly, in function IfxEth_setupRmiiInputPins() is incorrect configuration of P21.3:

Change this line
 ETH_GPCTL.B.ALTI0 = rmiiPins->mdio->inSelect 

on
ETH_GPCTL.B.ALTI0 = 0x03;

To see info about, refer to table 30-53 in Ref. Manual.

I hope, this help you to config ethernet correctly.
0 Likes
3 Replies
Not applicable
The second problem, if u have reconfigured MDIO port, u have to add delay after PHY reset. So boadr will work after reset without debuffing.
0 Likes
User13248
Level 1
Level 1
MCLK is running in 25MHz, while the MDIO data is sent by 2.5 Mhz I see there is no synchronisation between the MCLK and MDIO data line. How it can be corrected
0 Likes
Not applicable
I am still unable to do any communication with the PHY or, on the RJ45 cable.
Any Ideas on how to solve this issue?
0 Likes