forked from Minki/linux
net: phy: update the mdix_ctrl with correct value.
Update the mdix and mdix_ctrl with corresponding ethtool configuration parameters. Signed-off-by: Raju Lakkaraju <Raju.Lakkaraju@microsemi.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f4ed2fe34f
commit
1004ee6196
@ -389,7 +389,7 @@ int phy_ethtool_sset(struct phy_device *phydev, struct ethtool_cmd *cmd)
|
||||
|
||||
phydev->duplex = cmd->duplex;
|
||||
|
||||
phydev->mdix = cmd->eth_tp_mdix_ctrl;
|
||||
phydev->mdix_ctrl = cmd->eth_tp_mdix_ctrl;
|
||||
|
||||
/* Restart the PHY */
|
||||
phy_start_aneg(phydev);
|
||||
@ -443,7 +443,7 @@ int phy_ethtool_ksettings_set(struct phy_device *phydev,
|
||||
|
||||
phydev->duplex = duplex;
|
||||
|
||||
phydev->mdix = cmd->base.eth_tp_mdix_ctrl;
|
||||
phydev->mdix_ctrl = cmd->base.eth_tp_mdix_ctrl;
|
||||
|
||||
/* Restart the PHY */
|
||||
phy_start_aneg(phydev);
|
||||
@ -469,7 +469,8 @@ int phy_ethtool_gset(struct phy_device *phydev, struct ethtool_cmd *cmd)
|
||||
cmd->transceiver = phy_is_internal(phydev) ?
|
||||
XCVR_INTERNAL : XCVR_EXTERNAL;
|
||||
cmd->autoneg = phydev->autoneg;
|
||||
cmd->eth_tp_mdix_ctrl = phydev->mdix;
|
||||
cmd->eth_tp_mdix_ctrl = phydev->mdix_ctrl;
|
||||
cmd->eth_tp_mdix = phydev->mdix;
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -496,7 +497,8 @@ int phy_ethtool_ksettings_get(struct phy_device *phydev,
|
||||
|
||||
cmd->base.phy_address = phydev->mdio.addr;
|
||||
cmd->base.autoneg = phydev->autoneg;
|
||||
cmd->base.eth_tp_mdix_ctrl = phydev->mdix;
|
||||
cmd->base.eth_tp_mdix_ctrl = phydev->mdix_ctrl;
|
||||
cmd->base.eth_tp_mdix = phydev->mdix;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user