Use stmmac_get_phy_intf_sel() to decode the PHY interface mode to the phy_intf_sel value, and use the result to program the ethernet mode. Signed-off-by: Russell King (Oracle) --- drivers/net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c index 895d16dc0a4b..0f6be2a17e65 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-lpc18xx.c @@ -47,15 +47,14 @@ static int lpc18xx_dwmac_probe(struct platform_device *pdev) return PTR_ERR(reg); } - if (plat_dat->phy_interface == PHY_INTERFACE_MODE_MII) { - ethmode = PHY_INTF_SEL_GMII_MII; - } else if (plat_dat->phy_interface == PHY_INTERFACE_MODE_RMII) { - ethmode = PHY_INTF_SEL_RMII; - } else { + if (plat_dat->phy_interface != PHY_INTERFACE_MODE_MII && + plat_dat->phy_interface != PHY_INTERFACE_MODE_RMII) { dev_err(&pdev->dev, "Only MII and RMII mode supported\n"); return -EINVAL; } + ethmode = stmmac_get_phy_intf_sel(plat_dat->phy_interface); + regmap_update_bits(reg, LPC18XX_CREG_CREG6, LPC18XX_CREG_CREG6_ETHMODE_MASK, ethmode); -- 2.47.3