Guys Can anybody help me?
I try to connect my TMS 6457 with Marvell through SGMI.
I have some troubles with my ehternet driver.
I have created my own driver based on driver from EVM6457(lyrtech).
But there is one problem.
When i execute function EMAC_open, to configure EMAC, all registers are set properly.
Register MACSTATUS.Idle is in ILDE state (0x1)
But some time later it is set to "NOT IDLE STATE" (0x0).
And I don't understand why.
After this if I can set GMII_EN= 0 and then GMII_EN= 1. The MACSTATUS.Idle will be set in Idle state and Network stack will work properly.
Now i have a function which execute in by timer and check thsi bit ( MACSTATUS.Idle ).
If MACSTATUS.Idle =0 this function will reset GMII_EN.
It works fine but it is abnormally.
Can anybody explain me why MACSTATUS.Idle can be set to not idle state ?