Commit 34b31da4 authored by Andrew Lunn's avatar Andrew Lunn Committed by David S. Miller

phy: fixed_phy: Set supported speed in phydev

Set the supported field of the phydev to indicate the speed features
of the phy. If the phy is never attached to a netdev, but used in an
adjust_link() function, the speed will be incorrectly evaluated to
10/half rather than the correct speed/duplex.
Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
Acked-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent dea87024
...@@ -305,6 +305,18 @@ struct phy_device *fixed_phy_register(unsigned int irq, ...@@ -305,6 +305,18 @@ struct phy_device *fixed_phy_register(unsigned int irq,
phy->dev.of_node = np; phy->dev.of_node = np;
phy->is_pseudo_fixed_link = true; phy->is_pseudo_fixed_link = true;
switch (status->speed) {
case SPEED_1000:
phy->supported = PHY_1000BT_FEATURES;
break;
case SPEED_100:
phy->supported = PHY_100BT_FEATURES;
break;
case SPEED_10:
default:
phy->supported = PHY_10BT_FEATURES;
}
ret = phy_device_register(phy); ret = phy_device_register(phy);
if (ret) { if (ret) {
phy_device_free(phy); phy_device_free(phy);
......
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