Skip to content

Commit

Permalink
net: phy: smsc: Deduplicate interrupt acknowledgement upon phy_init_hw()
Browse files Browse the repository at this point in the history
Since commit 4c0d2e9 ("net: phy: consider that suspend2ram may cut
off PHY power"), phy_init_hw() invokes both, the ->config_init() and
->config_intr() callbacks.

In the SMSC PHY driver, the latter acknowledges stale interrupts, hence
there's no longer a need to acknowledge them in the former as well.

There are no other callers of ->config_init() besides phy_init_hw().

Drop the redundant code.

Signed-off-by: Lukas Wunner <lukas@wunner.de>
Link: https://lore.kernel.org/r/0254edf48bddc96c6248c4414043a3699e94614a.1655716767.git.lukas@wunner.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
  • Loading branch information
Lukas Wunner authored and Jakub Kicinski committed Jun 22, 2022
1 parent 8720bd9 commit b1f01b4
Showing 1 changed file with 1 addition and 12 deletions.
13 changes: 1 addition & 12 deletions drivers/net/phy/smsc.c
Original file line number Diff line number Diff line change
Expand Up @@ -121,10 +121,7 @@ static int smsc_phy_config_init(struct phy_device *phydev)
/* Enable energy detect mode for this SMSC Transceivers */
rc = phy_write(phydev, MII_LAN83C185_CTRL_STATUS,
rc | MII_LAN83C185_EDPWRDOWN);
if (rc < 0)
return rc;

return smsc_phy_ack_interrupt(phydev);
return rc;
}

static int smsc_phy_reset(struct phy_device *phydev)
Expand All @@ -146,11 +143,6 @@ static int smsc_phy_reset(struct phy_device *phydev)
return genphy_soft_reset(phydev);
}

static int lan911x_config_init(struct phy_device *phydev)
{
return smsc_phy_ack_interrupt(phydev);
}

static int lan87xx_config_aneg(struct phy_device *phydev)
{
int rc;
Expand Down Expand Up @@ -418,9 +410,6 @@ static struct phy_driver smsc_phy_driver[] = {

.probe = smsc_phy_probe,

/* basic functions */
.config_init = lan911x_config_init,

/* IRQ related */
.config_intr = smsc_phy_config_intr,
.handle_interrupt = smsc_phy_handle_interrupt,
Expand Down

0 comments on commit b1f01b4

Please sign in to comment.