]> git.itanic.dy.fi Git - linux-stable/commitdiff
net: dp83822: disable rx error interrupt
authorEnguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Thu, 23 Jun 2022 13:46:45 +0000 (15:46 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 20 Sep 2022 10:26:48 +0000 (12:26 +0200)
commit 0e597e2affb90d6ea48df6890d882924acf71e19 upstream.

Some RX errors, notably when disconnecting the cable, increase the RCSR
register. Once half full (0x7fff), an interrupt flood is generated. I
measured ~3k/s interrupts even after the RX errors transfer was
stopped.

Since we don't read and clear the RCSR register, we should disable this
interrupt.

Fixes: 87461f7a58ab ("net: phy: DP83822 initial driver submission")
Signed-off-by: Enguerrand de Ribaucourt <enguerrand.de-ribaucourt@savoirfairelinux.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/phy/dp83822.c

index cffa0cb517204c6d105438322938a0b5e7b3a12d..3738beb0fb40b25d28c2d7895e1c1159f9a47067 100644 (file)
@@ -203,8 +203,7 @@ static int dp83822_config_intr(struct phy_device *phydev)
                if (misr_status < 0)
                        return misr_status;
 
-               misr_status |= (DP83822_RX_ERR_HF_INT_EN |
-                               DP83822_ANEG_COMPLETE_INT_EN |
+               misr_status |= (DP83822_ANEG_COMPLETE_INT_EN |
                                DP83822_DUP_MODE_CHANGE_INT_EN |
                                DP83822_SPEED_CHANGED_INT_EN |
                                DP83822_LINK_STAT_INT_EN |