[PATCH 1/4 v2] powerpc: document max-speed and interface-type properties

Kim Phillips kim.phillips at freescale.com
Thu Apr 19 07:48:49 EST 2007


On Wed, 18 Apr 2007 12:34:27 +0200
Segher Boessenkool <segher at kernel.crashing.org> wrote:

> >>> sorry, I disagree; for me, a compatible entry in the PHY node would
> >>> look
> >>> something like "marvell"
> >>
> >> which would be completely wrong
> >>
> > that depends on what degree the manufacturer's PHYs are compatible.
> 
> No, if all there PHYs are compatible (and you have some
> guarantee that all there future PHYs will be as well!)
> it should read "marvell-phy" (or better, "MRVL,ethernet-phy"
> or something similar).
> 
> >>> or "m88e11x1".
> >>
> >> It should be something like "m88e11x1\0m88e1xxx\0rgmii" instead.
> >
> > m88e11x1 implies rgmii, including all the other interfaces the PHY
> > supports (gmii, mii, tbi, etc.).
> 
> If you don't put the less-specific entries there, only clients
> (OSes) that know about the exact name can use that PHY.  So if
> there is a minor upgrade of you board and it has a m88e11x2
> instead, your OS needs an update to work with your new device
> tree.  Not an ideal situation.
> 
> > ..but I'm not interested in specifying what interfaces the PHY 
> > supports.
> 
> But you *have* to.  The device tree describes the hardware,
> it is not a configuration file for Linux to use as it sees fit.

not for the purposes of this patch; ucc_geth passes interface_type, a
property of the board describing the connection between the MAC and PHY
(not a list of what connection types the PHY is capable of) to the
phylib, and the phylib is left to probe, identify, and configure the PHY
appropriately.

> 
> >>>> max-speed of connection = min(max-speed of enet, max-speed
> >>>> of PHY) -- and both of those are implied by their respective
> >>>> "compatible" properties.
> >>>
> >>> Again, max-speed is exclusively for configuring the UCC itself,
> >>> regardless of the connection speed.
> >>
> >> If that is really true, and the value of that property
> >> has nothing to do with the MAC<->PHY data channel, it should
> >> have a different (not that generic) name.
> >
> > can you elaborate on why, including an example of what you'd think 
> > would
> > be a better one?
> 
> Very generic names should only be used by very generic bindings.

it's intentionally generic; UCCs are Universal Communications
Controllers and implement many communications protocols.

> If a very specific device binding (like yours) uses a property
> name like that, there is a high chance it will clash with a more
> generic binding it uses (PCI, ethernet, network, ...) -- perhaps
> with a *future* version of such a binding.
> 
I'm sure future versions will be able to adjust accordingly :)

> Also, it isn't a great name /an sich/: "max-speed" -- maximum
> speed of what?
> 

?  it's fine - it's in the context of a communications device.
Can you come up with something better?

Kim



More information about the Linuxppc-dev mailing list