Merge tag 'nfsd-5.19' of git://git.kernel.org/pub/scm/linux/kernel/git/cel/linux
[platform/kernel/linux-starfive.git] / drivers / net / phy / dp83822.c
index ce17b2a..e6ad3a4 100644 (file)
@@ -94,7 +94,8 @@
 #define DP83822_WOL_INDICATION_SEL BIT(8)
 #define DP83822_WOL_CLR_INDICATION BIT(11)
 
-/* RSCR bits */
+/* RCSR bits */
+#define DP83822_RGMII_MODE_EN  BIT(9)
 #define DP83822_RX_CLK_SHIFT   BIT(12)
 #define DP83822_TX_CLK_SHIFT   BIT(11)
 
@@ -408,6 +409,12 @@ static int dp83822_config_init(struct phy_device *phydev)
                        if (err)
                                return err;
                }
+
+               phy_set_bits_mmd(phydev, DP83822_DEVADDR,
+                                       MII_DP83822_RCSR, DP83822_RGMII_MODE_EN);
+       } else {
+               phy_clear_bits_mmd(phydev, DP83822_DEVADDR,
+                                       MII_DP83822_RCSR, DP83822_RGMII_MODE_EN);
        }
 
        if (dp83822->fx_enabled) {