Hi Felix, > On Fri, Jun 25, 2010 at 4:33 AM, Felix Radensky > <[email protected]> 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 _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

