imx7d fec0 AD8031 - no external 125MHz clock

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx7d fec0 AD8031 - no external 125MHz clock

Jump to solution
791 Views
edwardtyrrell
Senior Contributor I

Quick question about the AD8031 in RGMII mode and it providing a 125MHz clock to the SOC. The AD8031 MDIO side works fine, but I can never get a good link status. I suspect it might be clock management. By default the driver selects an external 125MHz clock from the AR8031, seen in setting up the SOC clocks and poking the AR8031 registers. On my custom board I never see the 125MHz clock exiting the AR8031 ( I can get the AR8031 default 25MHz clock if I tweak the code ). Question is, is this clock there all the time or only produced once the link is up and the AD8031 can derive it off the LAN?

Thanks.   

0 Kudos
1 Solution
687 Views
edwardtyrrell
Senior Contributor I

SOLVED! Turns out the board was missing the 2.37K bias resistor. Once this was fitted the internal AR8031 auto-negotiation worked. Immediately after that my 125MHz derived clock appeared. The documentation alludes to the 125MHz clock being derived off/or referenced to line timings, this appears to be correct as the 125MHz clock only appears once the link is up.     

View solution in original post

0 Kudos
4 Replies
688 Views
edwardtyrrell
Senior Contributor I

SOLVED! Turns out the board was missing the 2.37K bias resistor. Once this was fitted the internal AR8031 auto-negotiation worked. Immediately after that my 125MHz derived clock appeared. The documentation alludes to the 125MHz clock being derived off/or referenced to line timings, this appears to be correct as the 125MHz clock only appears once the link is up.     

0 Kudos
687 Views
igorpadykov
NXP Employee
NXP Employee

Hi Edward

one can adjust clocks in uboot setup_fec()

mx7dsabresd.c\mx7dsabresd\freescale\board - uboot-imx - i.MX U-Boot 

Clock should be on all the time and recommended not to reenable it as described on

net: ethernet: fsl: don't en/disable refclk on open/close - Patchwork 


Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
687 Views
edwardtyrrell
Senior Contributor I

Thanks, I've already tried those registers.

Something's odd then. I can program teh AR8031 for 25Mz output but any other frequency nothing. The AR8031 documentation hints at the 125MHz is only produced from the line side sync pulses.

0 Kudos
687 Views
igorpadykov
NXP Employee
NXP Employee

AR8031 is used on i.MX6Q Sabre SD board

mx6sabresd.c\mx6sabresd\freescale\board - uboot-imx - i.MX U-Boot 

Best regards
igor

0 Kudos