Hi, 2016-01-02 18:52 GMT+01:00 Florian Fainelli <f.fainelli at gmail.com>: > >>> This looks reasonable, does it work if we just assign mdio_node to the pdev->dev.of_node to be backwards compatible with DTSes which have not yet been updated? >>> >> >> I don't understand what you mean. Instead of defining mdio_node with >> NULL, you propose to assign it to pdev->dev.of_node as its default >> value... then it would be reassigned with "child_nod" if a subnode >> with the compatible string "snps,dwmac-mdio" is found, or kept with >> its default value otherwise... and in this case we could call >> of_mdiobus_register(new_bus, mdio_node) all the time ? (it removes the >> conditonnal branch) > > Your understanding is correct, this is what I was suggesting, thanks So in this case, I already tested this yesterday, it does not work, basically because the for loop just after of_mdiobus_register is never executed, probably because new_bus->phy_map is not populated, which is not the case by calling mdiobus_register for example. of_mdiobus_register seems to populate this array of phys only for subnodes found in the devicetree... Regards, Romain