net: phy: at803x: move specific at8031 probe mode check to dedicated probe
Move specific at8031 probe mode check to dedicated probe to make at803x_probe more generic and keep code tidy. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
900eef75cc
commit
25d2ba9400
@ -844,26 +844,6 @@ static int at803x_probe(struct phy_device *phydev)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
if (phydev->drv->phy_id == ATH8031_PHY_ID) {
|
|
||||||
int ccr = phy_read(phydev, AT803X_REG_CHIP_CONFIG);
|
|
||||||
int mode_cfg;
|
|
||||||
|
|
||||||
if (ccr < 0)
|
|
||||||
return ccr;
|
|
||||||
mode_cfg = ccr & AT803X_MODE_CFG_MASK;
|
|
||||||
|
|
||||||
switch (mode_cfg) {
|
|
||||||
case AT803X_MODE_CFG_BX1000_RGMII_50OHM:
|
|
||||||
case AT803X_MODE_CFG_BX1000_RGMII_75OHM:
|
|
||||||
priv->is_1000basex = true;
|
|
||||||
fallthrough;
|
|
||||||
case AT803X_MODE_CFG_FX100_RGMII_50OHM:
|
|
||||||
case AT803X_MODE_CFG_FX100_RGMII_75OHM:
|
|
||||||
priv->is_fiber = true;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1584,6 +1564,9 @@ static int at8031_parse_dt(struct phy_device *phydev)
|
|||||||
|
|
||||||
static int at8031_probe(struct phy_device *phydev)
|
static int at8031_probe(struct phy_device *phydev)
|
||||||
{
|
{
|
||||||
|
struct at803x_priv *priv = phydev->priv;
|
||||||
|
int mode_cfg;
|
||||||
|
int ccr;
|
||||||
int ret;
|
int ret;
|
||||||
|
|
||||||
ret = at803x_probe(phydev);
|
ret = at803x_probe(phydev);
|
||||||
@ -1597,6 +1580,22 @@ static int at8031_probe(struct phy_device *phydev)
|
|||||||
if (ret)
|
if (ret)
|
||||||
return ret;
|
return ret;
|
||||||
|
|
||||||
|
ccr = phy_read(phydev, AT803X_REG_CHIP_CONFIG);
|
||||||
|
if (ccr < 0)
|
||||||
|
return ccr;
|
||||||
|
mode_cfg = ccr & AT803X_MODE_CFG_MASK;
|
||||||
|
|
||||||
|
switch (mode_cfg) {
|
||||||
|
case AT803X_MODE_CFG_BX1000_RGMII_50OHM:
|
||||||
|
case AT803X_MODE_CFG_BX1000_RGMII_75OHM:
|
||||||
|
priv->is_1000basex = true;
|
||||||
|
fallthrough;
|
||||||
|
case AT803X_MODE_CFG_FX100_RGMII_50OHM:
|
||||||
|
case AT803X_MODE_CFG_FX100_RGMII_75OHM:
|
||||||
|
priv->is_fiber = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
/* Disable WoL in 1588 register which is enabled
|
/* Disable WoL in 1588 register which is enabled
|
||||||
* by default
|
* by default
|
||||||
*/
|
*/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user