On Mon, Oct 18, 2021 at 02:52:20PM +0200, Maarten Zanders wrote:
mv88e6xxx_port_ppu_updates() interpretes data in the PORT_STS register incorrectly for internal ports (ie no PPU). In these cases, the PHY_DETECT bit indicates link status. This results in forcing the MAC state whenever the PHY link goes down which is not intended. As a side effect, LED's configured to show link status stay lit even though the physical link is down.
Add a check in mac_link_down and mac_link_up to see if it concerns an external port and only then, look at PPU status.
Difference from upstream commit: ops->port_sync_link() renamed to ops->port_set_link()
Fixes: 5d5b231da7ac (net: dsa: mv88e6xxx: use PHY_DETECT in mac_link_up/mac_link_down) Cc: stable@vger.kernel.org # 5.10 Signed-off-by: Maarten Zanders maarten.zanders@mind.be
drivers/net/dsa/mv88e6xxx/chip.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-)
Thanks for the backport, now queued up. But next time can you let me know what the upstream SHA1 is? I had to go dig it up...
thanks,
greg k-h