summaryrefslogtreecommitdiff
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/net/phy/realtek/realtek_main.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/net/phy/realtek/realtek_main.c b/drivers/net/phy/realtek/realtek_main.c
index 023e47ad605b..c3604e1c45d9 100644
--- a/drivers/net/phy/realtek/realtek_main.c
+++ b/drivers/net/phy/realtek/realtek_main.c
@@ -22,7 +22,14 @@
#include "../phylib.h"
#include "realtek.h"
+#define RTL8201F_IER_PAGE 0x07
#define RTL8201F_IER 0x13
+#define RTL8201F_IER_LINK BIT(13)
+#define RTL8201F_IER_DUPLEX BIT(12)
+#define RTL8201F_IER_ANERR BIT(11)
+#define RTL8201F_IER_MASK (RTL8201F_IER_ANERR | \
+ RTL8201F_IER_DUPLEX | \
+ RTL8201F_IER_LINK)
#define RTL8201F_ISR 0x1e
#define RTL8201F_ISR_ANERR BIT(15)
@@ -349,11 +356,13 @@ static int rtl8201_config_intr(struct phy_device *phydev)
if (err)
return err;
- val = BIT(13) | BIT(12) | BIT(11);
- err = phy_write_paged(phydev, 0x7, RTL8201F_IER, val);
+ val = RTL8201F_IER_MASK;
+ err = phy_write_paged(phydev, RTL8201F_IER_PAGE,
+ RTL8201F_IER, val);
} else {
val = 0;
- err = phy_write_paged(phydev, 0x7, RTL8201F_IER, val);
+ err = phy_write_paged(phydev, RTL8201F_IER_PAGE,
+ RTL8201F_IER, val);
if (err)
return err;