Re: [PATCH net-next 6/8] MIPS: mscc: Add switch to ocelot
From: Andrew Lunn
Date: Sat Mar 24 2018 - 10:49:06 EST
On Fri, Mar 23, 2018 at 03:11:23PM -0700, Florian Fainelli wrote:
> On 03/23/2018 03:06 PM, Andrew Lunn wrote:
> >>> That is the trade off of having a standalone MDIO bus driver. Maybe
> >>> add a phandle to the internal MDIO bus? The switch driver could then
> >>> follow the phandle, and direct connect the internal PHYs?
> >>
> >> This is more or less what patch 7 does, right?
> >
> > Patch 7 does it in DT. I'm suggesting it could be done in C. It is
> > hard wired, so there is no need to describe it in DT. Use the phandle
> > to get the mdio bus, mdiobus_get_phy(, port) to get the phydev and
> > then use phy_connect().
>
> That does not sound like a great idea. And to go back to your example
> about DSA, it is partially true, you will see some switch bindings
> defining the internal PHYs (e.g: qca8k), and most not doing it (b53,
> mv88e6xxx, etc.). In either case, this resolves to the same thing
> though. Being able to parse a phy-handle property is a lot more
> flexible, and if it does matter that the PHY truly is internal, then the
> 'phy-mode' property can help reflect that.
Hi Florian
With DSA, you can always provide a phy-handle. It is only when there
is nothing specified that the fallback case is used to map internal
PHYs to ports.
Putting internal PHYs in DT is fine, but it is a nice simplification
if it is not needed.
Andrew