Commit 0d375542 authored by Marek Behún's avatar Marek Behún Committed by David S. Miller

net: phy: marvell10g: allow 5gbase-r and usxgmii

These modes are also supported by these PHYs.
Signed-off-by: default avatarMarek Behún <kabel@kernel.org>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 28382814
...@@ -462,9 +462,11 @@ static int mv3310_config_init(struct phy_device *phydev) ...@@ -462,9 +462,11 @@ static int mv3310_config_init(struct phy_device *phydev)
/* Check that the PHY interface type is compatible */ /* Check that the PHY interface type is compatible */
if (phydev->interface != PHY_INTERFACE_MODE_SGMII && if (phydev->interface != PHY_INTERFACE_MODE_SGMII &&
phydev->interface != PHY_INTERFACE_MODE_2500BASEX && phydev->interface != PHY_INTERFACE_MODE_2500BASEX &&
phydev->interface != PHY_INTERFACE_MODE_5GBASER &&
phydev->interface != PHY_INTERFACE_MODE_XAUI && phydev->interface != PHY_INTERFACE_MODE_XAUI &&
phydev->interface != PHY_INTERFACE_MODE_RXAUI && phydev->interface != PHY_INTERFACE_MODE_RXAUI &&
phydev->interface != PHY_INTERFACE_MODE_10GBASER) phydev->interface != PHY_INTERFACE_MODE_10GBASER &&
phydev->interface != PHY_INTERFACE_MODE_USXGMII)
return -ENODEV; return -ENODEV;
phydev->mdix_ctrl = ETH_TP_MDI_AUTO; phydev->mdix_ctrl = ETH_TP_MDI_AUTO;
...@@ -599,6 +601,7 @@ static void mv3310_update_interface(struct phy_device *phydev) ...@@ -599,6 +601,7 @@ static void mv3310_update_interface(struct phy_device *phydev)
if ((phydev->interface == PHY_INTERFACE_MODE_SGMII || if ((phydev->interface == PHY_INTERFACE_MODE_SGMII ||
phydev->interface == PHY_INTERFACE_MODE_2500BASEX || phydev->interface == PHY_INTERFACE_MODE_2500BASEX ||
phydev->interface == PHY_INTERFACE_MODE_5GBASER ||
phydev->interface == PHY_INTERFACE_MODE_10GBASER) && phydev->interface == PHY_INTERFACE_MODE_10GBASER) &&
phydev->link) { phydev->link) {
/* The PHY automatically switches its serdes interface (and /* The PHY automatically switches its serdes interface (and
...@@ -611,6 +614,9 @@ static void mv3310_update_interface(struct phy_device *phydev) ...@@ -611,6 +614,9 @@ static void mv3310_update_interface(struct phy_device *phydev)
case SPEED_10000: case SPEED_10000:
phydev->interface = PHY_INTERFACE_MODE_10GBASER; phydev->interface = PHY_INTERFACE_MODE_10GBASER;
break; break;
case SPEED_5000:
phydev->interface = PHY_INTERFACE_MODE_5GBASER;
break;
case SPEED_2500: case SPEED_2500:
phydev->interface = PHY_INTERFACE_MODE_2500BASEX; phydev->interface = PHY_INTERFACE_MODE_2500BASEX;
break; break;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment