net: phy: dp83867: Program TX FIFO for all interfaces
authorSean Anderson <sean.anderson@linux.dev>
Thu, 29 Jan 2026 17:12:04 +0000 (12:12 -0500)
committerJakub Kicinski <kuba@kernel.org>
Tue, 3 Feb 2026 01:19:53 +0000 (17:19 -0800)
All supported interfaces use the TX FIFO register at least some of the
time, so there's no point in checking the interface. Retain the check
for the RX FIFO level since it is only used by SGMII.

Signed-off-by: Sean Anderson <sean.anderson@linux.dev>
Link: https://patch.msgid.link/20260129171205.3868605-2-sean.anderson@linux.dev
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/phy/dp83867.c

index 5f5de01..7e16e92 100644 (file)
@@ -744,27 +744,24 @@ static int dp83867_config_init(struct phy_device *phydev)
         */
        phy_disable_eee(phydev);
 
-       if (phy_interface_is_rgmii(phydev) ||
-           phydev->interface == PHY_INTERFACE_MODE_SGMII) {
-               val = phy_read(phydev, MII_DP83867_PHYCTRL);
-               if (val < 0)
-                       return val;
-
-               val &= ~DP83867_PHYCR_TX_FIFO_DEPTH_MASK;
-               val |= (dp83867->tx_fifo_depth <<
-                       DP83867_PHYCR_TX_FIFO_DEPTH_SHIFT);
+       val = phy_read(phydev, MII_DP83867_PHYCTRL);
+       if (val < 0)
+               return val;
 
-               if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
-                       val &= ~DP83867_PHYCR_RX_FIFO_DEPTH_MASK;
-                       val |= (dp83867->rx_fifo_depth <<
-                               DP83867_PHYCR_RX_FIFO_DEPTH_SHIFT);
-               }
+       val &= ~DP83867_PHYCR_TX_FIFO_DEPTH_MASK;
+       val |= (dp83867->tx_fifo_depth <<
+               DP83867_PHYCR_TX_FIFO_DEPTH_SHIFT);
 
-               ret = phy_write(phydev, MII_DP83867_PHYCTRL, val);
-               if (ret)
-                       return ret;
+       if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
+               val &= ~DP83867_PHYCR_RX_FIFO_DEPTH_MASK;
+               val |= (dp83867->rx_fifo_depth <<
+                       DP83867_PHYCR_RX_FIFO_DEPTH_SHIFT);
        }
 
+       ret = phy_write(phydev, MII_DP83867_PHYCTRL, val);
+       if (ret)
+               return ret;
+
        if (phy_interface_is_rgmii(phydev)) {
                val = phy_read(phydev, MII_DP83867_PHYCTRL);
                if (val < 0)