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:
Родитель
3379b3bfb7
Коммит
2429f13870
|
@ -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)
|
||||||
*
|
*
|
||||||
|
|
Загрузка…
Ссылка в новой задаче