net: usb: lan78xx: Extract PHY interrupt acknowledgment to helper
authorOleksij Rempel <o.rempel@pengutronix.de>
Mon, 5 May 2025 08:43:39 +0000 (10:43 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 7 May 2025 11:57:05 +0000 (12:57 +0100)
Move the PHY interrupt acknowledgment logic from lan78xx_link_reset()
to a new helper function lan78xx_phy_int_ack(). This simplifies the
code and prepares for reusing the acknowledgment logic independently
from the full link reset process, such as when using phylink.

No functional change intended.

Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de>
Reviewed-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/usb/lan78xx.c

index 07530eef82cb6894f437809c5e035a9b41f9254d..de2b429e906e8e3251b2ddccb903b7d721c71087 100644 (file)
@@ -1636,6 +1636,20 @@ exit_unlock:
        return ret;
 }
 
+/**
+ * lan78xx_phy_int_ack - Acknowledge PHY interrupt
+ * @dev: pointer to the LAN78xx device structure
+ *
+ * This function acknowledges the PHY interrupt by setting the
+ * INT_STS_PHY_INT_ bit in the interrupt status register (INT_STS).
+ *
+ * Return: 0 on success or a negative error code on failure.
+ */
+static int lan78xx_phy_int_ack(struct lan78xx_net *dev)
+{
+       return lan78xx_write_reg(dev, INT_STS, INT_STS_PHY_INT_);
+}
+
 static int lan78xx_link_reset(struct lan78xx_net *dev)
 {
        struct phy_device *phydev = dev->net->phydev;
@@ -1644,7 +1658,7 @@ static int lan78xx_link_reset(struct lan78xx_net *dev)
        u32 buf;
 
        /* clear LAN78xx interrupt status */
-       ret = lan78xx_write_reg(dev, INT_STS, INT_STS_PHY_INT_);
+       ret = lan78xx_phy_int_ack(dev);
        if (unlikely(ret < 0))
                return ret;