]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: felix: Don't restart PCS SGMII AN if not needed
authorAlex Marginean <alexandru.marginean@nxp.com>
Thu, 16 Jan 2020 18:09:59 +0000 (20:09 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 17 Jan 2020 12:17:49 +0000 (13:17 +0100)
commit1a732aaf364968e7e323896387a1351c7d092c62
tree0c41b672759b0a35c259d6a2a6ff7d30a0a041b7
parent5a97f4df8a019f0137ca39138f3d709f157868d2
net: dsa: felix: Don't restart PCS SGMII AN if not needed

Some PHYs like VSC8234 don't like it when AN restarts on their system side
and they restart line side AN too, going into an endless link up/down loop.
Don't restart PCS AN if link is up already.

Although in theory this feedback loop should be possible with the other
in-band AN modes too, for some reason it was not seen with the VSC8514
QSGMII and AQR412 USXGMII PHYs. So keep this logic only for SGMII where
the problem was found.

Fixes: a5f6a8f4ec20 ("net: dsa: felix: Add PCS operations for PHYLINK")
Suggested-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Alex Marginean <alexandru.marginean@nxp.com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/ocelot/felix_vsc9959.c