• Anders Larsen's avatar
    pch_gbe: ethtool cannot change parameters when link is down · c196ce05
    Anders Larsen authored
    When attempting to change e.g. the advertising mask when the link is down
    ecmd->speed is -1 causing mii_ethtool_sset() to bail out.
    
    This bug bit when connecting to a gigabit switch through a 4-pin (industrial)
    cable, since link negotiation would not complete (both endpoints claimed to
    be gigabit-capable, but this is not possible with only 4 pins).
    Any attempt to fix this by setting autonegation to not offer 1000Mbps
    failed as the setting would not be accepted while the link was still down...
    
    Set ecmd->speed to SPEED_1000 to satisfy mii_ethtool_sset()
    (the actual value of ecmd->speed doesn't matter as long as it is valid,
    since a re-negotation is forced afterwards).
    Signed-off-by: default avatarAnders Larsen <al@alarsen.net>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    c196ce05
pch_gbe_ethtool.c 14.4 KB