.ndo_validate_addr      = eth_validate_addr,
 };
 
-static int nb8800_nway_reset(struct net_device *dev)
-{
-       struct phy_device *phydev = dev->phydev;
-
-       if (!phydev)
-               return -ENODEV;
-
-       return genphy_restart_aneg(phydev);
-}
-
 static void nb8800_get_pauseparam(struct net_device *dev,
                                  struct ethtool_pauseparam *pp)
 {
 }
 
 static const struct ethtool_ops nb8800_ethtool_ops = {
-       .nway_reset             = nb8800_nway_reset,
+       .nway_reset             = phy_ethtool_nway_reset,
        .get_link               = ethtool_op_get_link,
        .get_pauseparam         = nb8800_get_pauseparam,
        .set_pauseparam         = nb8800_set_pauseparam,