---- a/drivers/net/arm/ixp4xx_eth.c
-+++ b/drivers/net/arm/ixp4xx_eth.c
-@@ -1247,6 +1247,7 @@ static int __devexit eth_remove_one(stru
- struct net_device *dev = platform_get_drvdata(pdev);
- struct port *port = netdev_priv(dev);
-
-+ phy_disconnect(port->phydev);
- unregister_netdev(dev);
- phy_disconnect(port->phydev);
- npe_port_tab[NPE_ID(port->id)] = NULL;