[PATCH 1/4 v2] powerpc: document max-speed and interface-type properties
kim.phillips at freescale.com
Tue Apr 17 02:57:29 EST 2007
On Mon, 16 Apr 2007 17:47:18 +0200
Segher Boessenkool <segher at kernel.crashing.org> wrote:
> >>>> Since ucc_geth is being migrated to use the phylib, the existing
> >>>> (undocumented) 'interface' property is being deprecated in favour
> >>>> of unconjoined variations 'max-speed' and 'interface-type'.
> >>> Again, please explain why this information shouldn't
> >>> be in the PHY node instead?
> >> Strictly speaking, it should be neither in the UCC node nor the PHY
> >> node, as it describes the connection between the two, but..
> Connections are never described with separate nodes in
> the device tree.
> >> the UCC driver utilizes the data itself; the UCC, unlike other network
> >> controllers, does not provide interface data in its programming model.
> I have no idea what this means?
The UCC is a direct consumer of the values of the properties.
> >> the phy drivers are not of_ drivers. Porting phylib drivers to be of_
> >> drivers would break phylib for non-OF arches, e.g. x86.
> > Nothing stops the code in the UCC driver from grabbing the phy device
> > node and pulling the information out if it.
> Quite so. This isn't "bad style" either, it is a perfectly
> normal thing to do.
> > I believe the question is about where the information should truly
> > live.
> > It would seem to be more of a property of the phy than of the enet
> > controller.
> Yep. The whole reason why any property is wanted here is
> to say what type the PHY is, as the enet controller can
> be attached to several kinds. And what type the PHY is
> belongs in the PHY node, obviously. In its "compatible"
> property to be exact.
I don't need to know what type the PHY is, e.g. whether it's m88e11x1
compatible or not, the phylib handles that.
If I were to put the properties in the PHY node, I wouldn't be able to
describe a 1000Mbit/s capable UCC connected to a 100Mbit/s capable PHY,
or vice versa.
More information about the Linuxppc-dev