public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] PHY support issues
@ 2014-11-07  2:25 Aaron Williams
  0 siblings, 0 replies; only message in thread
From: Aaron Williams @ 2014-11-07  2:25 UTC (permalink / raw)
  To: u-boot

Hi all,

I am dealing with some phy devices made by Cortina and the current
U-Boot PHY infrastructure is giving me some huge headaches.

First of all, Cortina does not follow any of the standards for their
phys. Their phys use clause 45 but use device 0 registers 0 and 1 for
the PHY ID instead of the usual device 1-4 registers 2-3.

On top of that, some of their devices like the CS4223 can have multiple
interfaces share the same MDIO address.

We're running quad XFI with this device and the Cortina phy uses a
single address for all four interfaces but offsets the registers for
each interface by 0x1000.  For example, interface 0 uses register
addresses 0.0x1000-0x1fff, interface 1 uses register addresses
0.0x2000-0x2fff, etc.

Instead of using an array for each MDIO interface a linked list per MDIO
interface might be better.

One other thing to keep in mind is that a number of phy companies are
starting to migrate away from MDIO. I was just speaking with a Vitesse
engineer and they want to do away with MDIO and support SPI and i2c
instead and possibly PCIe for configuration. Other phy devices I'm
working with also support these alternative busses. I believe I
emphasized how important MDIO support is, however, since it is a
standard and it supports multiple devices per interface (unlike SPI
which requires a separate chip enable per device).

One other change I would like to see is support for more interface
types.  We're dealing with everything from RGMII, SGMII, QSGMII, XAUI,
XFI, XLAUI, 10G KR 40G KR among other interface types.

Someday I'd love to get our U-Boot into the upstream U-Boot but it will
be a big process. We have well over 700,000 lines of code, most of this
portable between all of our chips and boards with only myself to
maintain and support it.

-Aaron

-- 
Aaron Williams
Software Engineer
Cavium, Inc.
(408) 943-7198  (510) 789-8988 (cell)

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-11-07  2:25 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-07  2:25 [U-Boot] PHY support issues Aaron Williams

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox