aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/phy/dp83822.c
diff options
context:
space:
mode:
authorDan Murphy <dmurphy@ti.com>2020-09-18 14:14:53 -0500
committerDavid S. Miller <davem@davemloft.net>2020-09-19 16:54:35 -0700
commit9ef7e18ba52b4970934bed24589cff0c8be50c83 (patch)
treed0fe4ba12a193cd92fa1eadfefe51b9a5191aa34 /drivers/net/phy/dp83822.c
parentnet: dp83869: Add ability to advertise Fiber connection (diff)
downloadlinux-dev-9ef7e18ba52b4970934bed24589cff0c8be50c83.tar.xz
linux-dev-9ef7e18ba52b4970934bed24589cff0c8be50c83.zip
net: phy: dp83822: Update the fiber advertisement for speed
Update the fiber advertisement for speed and duplex modes with the 100base-FX full and half linkmode entries. Signed-off-by: Dan Murphy <dmurphy@ti.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy/dp83822.c')
-rw-r--r--drivers/net/phy/dp83822.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/net/phy/dp83822.c b/drivers/net/phy/dp83822.c
index 732c8bec7452..c162c9551bd1 100644
--- a/drivers/net/phy/dp83822.c
+++ b/drivers/net/phy/dp83822.c
@@ -110,9 +110,8 @@
#define DP83822_RX_ER_SHIFT 8
#define MII_DP83822_FIBER_ADVERTISE (ADVERTISED_TP | ADVERTISED_MII | \
- ADVERTISED_FIBRE | ADVERTISED_BNC | \
- ADVERTISED_Pause | ADVERTISED_Asym_Pause | \
- ADVERTISED_100baseT_Full)
+ ADVERTISED_FIBRE | \
+ ADVERTISED_Pause | ADVERTISED_Asym_Pause)
struct dp83822_private {
bool fx_signal_det_low;
@@ -406,6 +405,14 @@ static int dp83822_config_init(struct phy_device *phydev)
phydev->supported);
linkmode_set_bit(ETHTOOL_LINK_MODE_FIBRE_BIT,
phydev->advertising);
+ linkmode_set_bit(ETHTOOL_LINK_MODE_100baseFX_Full_BIT,
+ phydev->supported);
+ linkmode_set_bit(ETHTOOL_LINK_MODE_100baseFX_Half_BIT,
+ phydev->supported);
+ linkmode_set_bit(ETHTOOL_LINK_MODE_100baseFX_Full_BIT,
+ phydev->advertising);
+ linkmode_set_bit(ETHTOOL_LINK_MODE_100baseFX_Half_BIT,
+ phydev->advertising);
/* Auto neg is not supported in fiber mode */
bmcr = phy_read(phydev, MII_BMCR);