Messages in this thread | | | Date | Thu, 28 Apr 2016 22:10:50 +0200 | From | Andrew Lunn <> | Subject | Re: [PATCH v2] net: macb: do not scan PHYs manually |
| |
On Thu, Apr 28, 2016 at 01:03:15PM -0700, Florian Fainelli wrote: > On 28/04/16 11:59, Andrew Lunn wrote: > > On Thu, Apr 28, 2016 at 01:55:27PM -0500, Nathan Sullivan wrote: > >> On Thu, Apr 28, 2016 at 08:43:03PM +0200, Andrew Lunn wrote: > >>>> I agree that is a valid fix for AT91, however it won't solve our problem, since > >>>> we have no children on the second ethernet MAC in our devices' device trees. I'm > >>>> starting to feel like our second MAC shouldn't even really register the MDIO bus > >>>> since it isn't being used - maybe adding a DT property to not have a bus is a > >>>> better option? > >>> > >>> status = "disabled" > >>> > >>> would be the unusual way. > >>> > >>> Andrew > >> > >> Oh, sorry, I meant we use both MACs on Zynq, however the PHYs are on the MDIO > >> bus of the first MAC. So, the second MAC is used for ethernet but not for MDIO, > >> and so it does not have any PHYs under its DT node. It would be nice if there > >> were a way to tell macb not to bother with MDIO for the second MAC, since that's > >> handled by the first MAC. > > > > Yes, exactly, add support for status = "disabled" in the mdio node. > > Something like that, just so we do not have to sprinkle tests all other > the place: > > diff --git a/drivers/of/of_mdio.c b/drivers/of/of_mdio.c > index b622b33dbf93..2f497790be1b 100644 > --- a/drivers/of/of_mdio.c > +++ b/drivers/of/of_mdio.c > @@ -209,6 +209,10 @@ int of_mdiobus_register(struct mii_bus *mdio, > struct device_node *np) > bool scanphys = false; > int addr, rc; > > + /* Do not continue if the node is disabled */ > + if (!of_device_is_available(np)) > + return -EINVAL; > + > /* Mask out all PHYs from auto probing. Instead the PHYs listed in > * the device tree are populated after the bus has been > registered */ > mdio->phy_mask = ~0;
Yes, that looks good.
Andrew
| |