Put the mdiodev after lynx_pcs_create() so that the Lynx PCS driver
can manage the lifetime of the mdiodev its using.
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
 
 static void pcs_put(struct phylink_pcs *pcs)
 {
-       struct mdio_device *mdiodev;
-
        if (IS_ERR_OR_NULL(pcs))
                return;
 
-       mdiodev = lynx_get_mdio_device(pcs);
        lynx_pcs_destroy(pcs);
-       mdio_device_free(mdiodev);
 }
 
 static int memac_free(struct fman_mac *memac)
                return ERR_PTR(-EPROBE_DEFER);
 
        pcs = lynx_pcs_create(mdiodev);
-       if (!pcs)
-               mdio_device_free(mdiodev);
+       mdio_device_put(mdiodev);
 
        return pcs;
 }