Thread (10 messages) 10 messages, 4 authors, 2009-05-03

Re: Porting the ibm_newemac driver to use phylib (and other PHY/MAC questions)

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2009-05-03 22:15:32
Also in: lkml, netdev

On Sun, 2009-05-03 at 00:26 -0400, Kyle Moffett wrote:
Ok, I've dug through the docs on the 460EPx (the CPU I'm using), and
I'd like some confirmation of the following:

*  The EMAC hardware itself internally has its own dedicated
MDIO/MDClk lines, driven by the STACR register.
Yes, though not all EMACs cells have this wired to anything. For
example, the 405EP has 2 EMACs but only EMAC0 has MDIO, which is
used to control both PHYs. Later variants multiplex the MDIOs via
a programmable switch in the ZMII or RGMII though.
*  On many/most cpus, there is only a single set of external
MDIO/MDClk pins, driven either off the ZMII bridge or the RGMII
bridge.
Yes, though on the very old ones, the ZMII bridge is effectively
invisible (if it exists at all) and only EMAC0 MDIO pins are wired out.
*  Both bridge-types have their own internal register for switching
the external MDIO/MDClk pins between the two sets of internal
EMAC<=>bridge links.
Yes.
*  Some SoCs have both an ZMII and an RGMII bridge, and the external
MDIO/MDClk pins are only connected to one of the two bridges (How do I
know which one?  Alternatively, do I just program both and hope for
the best?).
That's been my approach so far :-)
*  Some older SoCs simply export the MDIO/MDClk pins from one of their
internal EMAC chips and don't bother with running it through the
multiplexing bridge.
Yes.
Are there any SoCs which actually export the MDIO/MDClk pins from
both/all of their EMACs?
I don't know of such a beast.

Cheers,
Ben.
Cheers,
Kyle Moffett
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help