Merge branch 'macb-Introduce-phy-handle-DT-functionality'
authorDavid S. Miller <davem@davemloft.net>
Fri, 16 Mar 2018 15:14:34 +0000 (11:14 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 16 Mar 2018 15:14:34 +0000 (11:14 -0400)
commit1ad2ff028f36c8cdbf149db740eb36aead7b375e
tree444fac8404c957a53990b3ccb6844af6c9e2ae9f
parent2b221d20db7583fa8f36d4545554786fcf93ca8e
parentf3b249e652792290cea1db45fa58e51c69cdd68e
Merge branch 'macb-Introduce-phy-handle-DT-functionality'

Brad Mouring says:

====================
net: macb: Introduce phy-handle DT functionality

Consider the situation where a macb netdev is connected through
a phydev that sits on a mii bus other than the one provided to
this particular netdev. This situation is what this patchset aims
to accomplish through the existing phy-handle optional binding.

This optional binding (as described in the ethernet DT bindings doc)
directs the netdev to the phydev to use. This is precisely the
situation this patchset aims to solve, so it makes sense to introduce
the functionality to this driver (where the physical layout discussed
was encountered).

The devicetree snippet would look something like this:

...
   ethernet@feedf00d {
           ...
           phy-handle = <&phy0> // the first netdev is physically wired to phy0
           ...
           phy0: phy@0 {
                   ...
                   reg = <0x0> // MDIO address 0
                   ...
           }
           phy1: phy@1 {
                   ...
                   reg = <0x1> // MDIO address 1
                   ...
           }
           ...
   }

   ethernet@deadbeef {
           ...
           phy-handle = <&phy1> // tells the driver to use phy1 on the
                                // first mac's mdio bus (it's wired thusly)
           ...
   }
...

The work done to add the phy_node in the first place (dacdbb4dfc1a1:
"net: macb: add fixed-link node support") will consume the
device_node (if found).

v2: Reorganization of mii probe/init functions, suggested by Andrew Lunn
v3: Moved some of the bus init code back into init (erroneously moved to probe)
    some style issues, and an unintialized variable warning addressed.
v4: Add Reviewed-by: tags
    Skip fallback code if phy-handle phandle is found
v5: Cleanup formatting issues
    Fix compile failure introduced in 1/4 "net: macb: Reorganize macb_mii
        bringup"
    Fix typo in "Documentation: macb: Document phy-handle binding"
====================

Signed-off-by: David S. Miller <davem@davemloft.net>