> For this phy, we have: > > compatible = "cortina,cs4223-slice";
That actually means something else is happening, i think. of_mdiobus_register() looks at the children, and decides if each child is a phy or an mdio device, by calling of_mdiobus_child_is_phy(). Since this compatible string is not in whitelist_phys[], it will return false. of_mdiobus_register() will then do a of_mdiobus_register_device(). This compatible means it is an MDIO device, not a PHY. So when you later call of_phy_find_device() it is always going to return NULL, because there is no PHY there, only an MDIO device. How usable is the hardware without a PHY driver? Is a better solution that your write a very minimal PHY driver? Andrew