summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoritz Fischer <mdf@kernel.org>2019-02-06 21:45:29 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-01-27 14:46:17 +0100
commit391fd358568db5b98464b26c8fca0b2c03f6fef4 (patch)
treefea5be30d656fd1d39d9717cd678858024d8b28f
parent032c10fb504cf15575a69e2f7e673c72c720ade7 (diff)
net: phy: fixed_phy: Fix fixed_phy not checking GPIO
[ Upstream commit 8f289805616e81f7c1690931aa8a586c76f4fa88 ] Fix fixed_phy not checking GPIO if no link_update callback is registered. In the original version all users registered a link_update callback so the issue was masked. Fixes: a5597008dbc2 ("phy: fixed_phy: Add gpio to determine link up/down.") Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Moritz Fischer <mdf@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/net/phy/fixed_phy.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/phy/fixed_phy.c b/drivers/net/phy/fixed_phy.c
index eb5167210681..3ab2eb677a59 100644
--- a/drivers/net/phy/fixed_phy.c
+++ b/drivers/net/phy/fixed_phy.c
@@ -67,11 +67,11 @@ static int fixed_mdio_read(struct mii_bus *bus, int phy_addr, int reg_num)
do {
s = read_seqcount_begin(&fp->seqcount);
/* Issue callback if user registered it. */
- if (fp->link_update) {
+ if (fp->link_update)
fp->link_update(fp->phydev->attached_dev,
&fp->status);
- fixed_phy_update(fp);
- }
+ /* Check the GPIO for change in status */
+ fixed_phy_update(fp);
state = fp->status;
} while (read_seqcount_retry(&fp->seqcount, s));