net: fec: remove workaround to restart phylib state machine on MDIO timeout

There's a workaround to restart the phylib state machine in case of a
MDIO access timeout. Seems it was introduced to deal with the
consequences of a too small MDIO timeout. See also commit message of
c3b084c24c ("net: fec: Adjust ENET MDIO timeouts") which increased
the timeout value later. Due to the later timeout value fix it seems
to be safe to remove the workaround.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Heiner Kallweit 2018-12-16 15:00:40 +01:00 коммит произвёл David S. Miller
Родитель 3379b3bfb7
Коммит 2429f13870
2 изменённых файлов: 0 добавлений и 13 удалений

Просмотреть файл

@ -531,7 +531,6 @@ struct fec_enet_private {
/* Phylib and MDIO interface */ /* Phylib and MDIO interface */
struct mii_bus *mii_bus; struct mii_bus *mii_bus;
int mii_timeout;
uint phy_speed; uint phy_speed;
phy_interface_t phy_interface; phy_interface_t phy_interface;
struct device_node *phy_node; struct device_node *phy_node;

Просмотреть файл

@ -1714,12 +1714,6 @@ static void fec_enet_adjust_link(struct net_device *ndev)
struct phy_device *phy_dev = ndev->phydev; struct phy_device *phy_dev = ndev->phydev;
int status_change = 0; int status_change = 0;
/* Prevent a state halted on mii error */
if (fep->mii_timeout && phy_dev->state == PHY_HALTED) {
phy_dev->state = PHY_RESUMING;
return;
}
/* /*
* If the netdev is down, or is going down, we're not interested * If the netdev is down, or is going down, we're not interested
* in link state events, so just mark our idea of the link as down * in link state events, so just mark our idea of the link as down
@ -1779,7 +1773,6 @@ static int fec_enet_mdio_read(struct mii_bus *bus, int mii_id, int regnum)
if (ret < 0) if (ret < 0)
return ret; return ret;
fep->mii_timeout = 0;
reinit_completion(&fep->mdio_done); reinit_completion(&fep->mdio_done);
/* start a read op */ /* start a read op */
@ -1791,7 +1784,6 @@ static int fec_enet_mdio_read(struct mii_bus *bus, int mii_id, int regnum)
time_left = wait_for_completion_timeout(&fep->mdio_done, time_left = wait_for_completion_timeout(&fep->mdio_done,
usecs_to_jiffies(FEC_MII_TIMEOUT)); usecs_to_jiffies(FEC_MII_TIMEOUT));
if (time_left == 0) { if (time_left == 0) {
fep->mii_timeout = 1;
netdev_err(fep->netdev, "MDIO read timeout\n"); netdev_err(fep->netdev, "MDIO read timeout\n");
ret = -ETIMEDOUT; ret = -ETIMEDOUT;
goto out; goto out;
@ -1820,7 +1812,6 @@ static int fec_enet_mdio_write(struct mii_bus *bus, int mii_id, int regnum,
else else
ret = 0; ret = 0;
fep->mii_timeout = 0;
reinit_completion(&fep->mdio_done); reinit_completion(&fep->mdio_done);
/* start a write op */ /* start a write op */
@ -1833,7 +1824,6 @@ static int fec_enet_mdio_write(struct mii_bus *bus, int mii_id, int regnum,
time_left = wait_for_completion_timeout(&fep->mdio_done, time_left = wait_for_completion_timeout(&fep->mdio_done,
usecs_to_jiffies(FEC_MII_TIMEOUT)); usecs_to_jiffies(FEC_MII_TIMEOUT));
if (time_left == 0) { if (time_left == 0) {
fep->mii_timeout = 1;
netdev_err(fep->netdev, "MDIO write timeout\n"); netdev_err(fep->netdev, "MDIO write timeout\n");
ret = -ETIMEDOUT; ret = -ETIMEDOUT;
} }
@ -2001,8 +1991,6 @@ static int fec_enet_mii_init(struct platform_device *pdev)
return -ENOENT; return -ENOENT;
} }
fep->mii_timeout = 0;
/* /*
* Set MII speed to 2.5 MHz (= clk_get_rate() / 2 * phy_speed) * Set MII speed to 2.5 MHz (= clk_get_rate() / 2 * phy_speed)
* *