> - ret = of_mdiobus_register(bus, np); So this is the interesting part. What you really want to be doing is adding a device_mdiobus_register(bus, dev) to the core. And it needs to share as much as possible with the of_mdiobus_register() implementation. Andrew