diff options
author | Ivan Bornyakov <i.bornyakov@metrotek.ru> | 2021-04-13 23:54:52 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-04-14 12:56:44 -0700 |
commit | d7029f55cc46066d833cbf7f532b1ae8d6835859 (patch) | |
tree | be28579efa57ff394abed7b253f319f30dacc940 /include/linux/stmmac.h | |
parent | net: phy: marvell-88x2222: move read_status after config_aneg (diff) | |
download | wireguard-linux-d7029f55cc46066d833cbf7f532b1ae8d6835859.tar.xz wireguard-linux-d7029f55cc46066d833cbf7f532b1ae8d6835859.zip |
net: phy: marvell-88x2222: swap 1G/10G modes on autoneg
Setting 10G without autonegotiation is invalid according to
phy_ethtool_ksettings_set(). Thus, we need to set it during
autonegotiation.
If 1G autonegotiation can't complete for quite a time, but there is
signal in line, switch line interface type to 10GBase-R, if supported,
in hope for link to be established.
And vice versa. If 10GBase-R link can't be established for quite a time,
and autonegotiation is enabled, and there is signal in line, switch line
interface type to appropriate 1G mode, i.e. 1000Base-X or SGMII, if
supported.
Signed-off-by: Ivan Bornyakov <i.bornyakov@metrotek.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/stmmac.h')
0 files changed, 0 insertions, 0 deletions