Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00f55366 authored by Dan Murphy's avatar Dan Murphy Committed by David S. Miller
Browse files

net: phy: DP83TC811: Fix SGMII enable/disable



If SGMII was selected in the DT then the device should
write the SGMII enable bit.

If SGMII is not selected in the DT then the SGMII bit
should be disabled.

Signed-off-by: default avatarDan Murphy <dmurphy@ti.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 42036383
Loading
Loading
Loading
Loading
+9 −11
Original line number Diff line number Diff line
@@ -284,20 +284,18 @@ static int dp83811_config_init(struct phy_device *phydev)
	if (err < 0)
		return err;

	if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
	value = phy_read(phydev, MII_DP83811_SGMII_CTRL);
		if (!(value & DP83811_SGMII_EN)) {
	if (phydev->interface == PHY_INTERFACE_MODE_SGMII) {
		err = phy_write(phydev, MII_DP83811_SGMII_CTRL,
					(DP83811_SGMII_EN | value));
			if (err < 0)
				return err;
	} else {
		err = phy_write(phydev, MII_DP83811_SGMII_CTRL,
				(~DP83811_SGMII_EN & value));
	}

	if (err < 0)

		return err;
		}
	}

	value = DP83811_WOL_MAGIC_EN | DP83811_WOL_SECURE_ON | DP83811_WOL_EN;