Re: Fixed PHY Device Tree usage?

Florian Fainelli
2013-07-10T16:30:25Z

Hello Thomas,

2013/7/10 Thomas Petazzoni <thomas.petazzoni@free-electrons.com>:

[snip]

>> >
>> > It has the same properties as the binding described in:
>> > Documentation/devicetree/bindings/net/fsl-tsec-phy.txt but expressed in a
>> > more explicit way instead of using an array of integers.
>
> And so the fixed-phy driver would look for what exactly in the Device
> Tree to find which fixed PHYs to create?
>
> Should we have something like:
>
> mdio-fixed {
> compatible = "generic,mdio-fixed";
> phy0: ethernet-phy@0 {
> ... all the properties you listed ...
> ... maybe the "id" property is not needed
> because of the phandle ...

In the "fixed-phy" terminology "id" is unfortunately ambiguous, the
driver internally uses "phy_id" which is nothing more than a PHY
address, but it also supports being assigned an "id" as in
Identification register 2 & 3. I was refering to the identification
register by "id".

> };
>
> phy1: ethernet-phy@1 {
> ... all the properties you listed ...
> ... maybe the "id" property is not needed
> because of the phandle ...
> };
> };
>
> soc {
> ethernet@0 {
> phy = <&phy0>;
> ...
> };
>
> ethernet@1 {
> phy = <&phy1>;
> ...
> };
> };
>
> or do you have in mind another representation?

Not really this is more or less what I had in mind. I am wondering
whether we should really declare the "mdio-fixed" node, or if we
should not rather make the following:

- declare all PHY nodes in the system as sub nodes of their belonging
real hardware MDIO bus node
- flag specific PHY nodes as "fixed" with a "fixed-link" boolean for instance
- if we see that flag, make that specific PHY node bind to the
fixed-phy driver instead

What do you think? I suspect someone might rightfully say that the
"fixed-mdio" is not a real piece of hardware and is just a software
concept. A PHY in the real world may very well have a fixed link
speed/duplex/pause settings on the other end.
--
Florian