[U-Boot] Link problem with eTSEC2 on P2020RDB
Peter Tyser
ptyser at xes-inc.com
Sat Jun 26 15:19:42 CEST 2010
Hi Felix,
> On Fri, Jun 25, 2010 at 4:33 AM, Felix Radensky
> <felix at embedded-sol.com> wrote:
> Hi Ben,
>
> Peter Tyser seems to be OOO until Monday, so maybe you can
> comment on this problem,
> as it's network related.
>
> Peter's patch comes to fix a problem with ethernet not working
> on XES 8572 board using
> BCM5482S PHY in SGMII mode. On the other hand it breaks
> eTSEC2 on P2020RDB
> board using VSC8211 PHY in SGMII mode. On P2020RDB not only
> u-boot, but also
> Linux cannot use eTSEC2.
>
>
>
> Do you have any suggestions how to make both boards happy ?
My company talked with a Freescale field application engineer about this
issue quite a bit a while back, and the application note at
http://www.freescale.com/files/32bit/doc/app_note/AN3869.pdf also
provides some good info. I can forward relevant snippets of the
discussion with the Freescale FAE when I get back into the office on
Monday. For reference, we are using the BCM5482S PHY connected to a
MPC8572 via SMGII, with both copper and fiber interfaces on the remote
side of the PHY.
In any case, our testing and the Freescale FAE's input showed that
in-band auto-negotiation on the SGMII interface didn't work, thus I
submitted the change you referenced. If my memory is correct,
empirically it looked like the MPC8572 did support 1000 base-X
auto-negotiation, but not SGMII auto-negotiation. Can you validate
you're using SGMII and not 1000 base-X to connect the P2020 to the
VSC8211 PHY? A simple way to test this should be to connect the VSC8211
to a 100 mpbs switch - this should work fine via SGMII but not 1000
base-X (assuming you're using a copper interface).
Unfortunately our newer P2020 products don't use SGMII interfaces so I
can't investigate the differences between the P2020 vs MPC8572.
> I'm not familiar with how SGMII is configured on this controller, but
> it appears that Peter's patch turned of Autonegotiation. Why this
> would make a PHY work and a switch not work is curious... Maybe we
> should have a CONFIG option for SGMII parameters. Settings could
> default to the ones Peter set (since he submitted it in November and
> problems are surfacing now), but could be overriden. Does that sound
> reasonable? Something like:
>
>
> #ifndef CONFIG TSEC_TBICR_SETTINGS
> #define TBICR_SETTINGS ( \
> TBICR_PHY_RESET \
> | TBICR_FULL_DUPLEX \
> | TBICR_SPEED1_SET \
> )
> #else
> #define TBICR_SETTINGS CONFIG_TSEC_TBICR_SETTINGS
> #endif
> Thanks.
This solution is fine by me. I'd be curious if anyone at Freescale has
a definitive answer about SGMII and auto-negotiation. I'm happy to try
any patch on Monday
Best,
Peter
More information about the U-Boot
mailing list