Hi Corentin > +static int sun8i_emac_mdio_register(struct net_device *ndev) > +{ > + struct sun8i_emac_priv *priv = netdev_priv(ndev); > + struct mii_bus *bus; > + int ret; > + > + bus = mdiobus_alloc(); You can use devm_mdiobus_alloc() which will simplify your error handling and unregister code. Andrew