diff mbox series

[net-next,2/2] net: phy: mscc: consider interrupt source in interrupt handler

Message ID 14496a42-6203-b601-f301-91d28bedb09f@gmail.com
State Accepted
Delegated to: David Miller
Headers show
Series net: phy: improve phy_driver callback handle_interrupt | expand

Commit Message

Heiner Kallweit March 16, 2020, 9:33 p.m. UTC
Trigger the respective interrupt handler functionality only if the
related interrupt source bit is set.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
---
 drivers/net/phy/mscc/mscc_main.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/drivers/net/phy/mscc/mscc_main.c b/drivers/net/phy/mscc/mscc_main.c
index 4727aba8e..2f6229a70 100644
--- a/drivers/net/phy/mscc/mscc_main.c
+++ b/drivers/net/phy/mscc/mscc_main.c
@@ -1437,8 +1437,11 @@  static irqreturn_t vsc8584_handle_interrupt(struct phy_device *phydev)
 	if (irq_status < 0 || !(irq_status & MII_VSC85XX_INT_MASK_MASK))
 		return IRQ_NONE;
 
-	vsc8584_handle_macsec_interrupt(phydev);
-	phy_mac_interrupt(phydev);
+	if (irq_status & MII_VSC85XX_INT_MASK_EXT)
+		vsc8584_handle_macsec_interrupt(phydev);
+
+	if (irq_status & MII_VSC85XX_INT_MASK_LINK_CHG)
+		phy_mac_interrupt(phydev);
 
 	return IRQ_HANDLED;
 }