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. -- Florian