linux-stable/drivers/net/ethernet/amd
Shyam Sundar S K 84fe68eb67 net: amd-xgbe: Reset link when the link never comes back
Normally, auto negotiation and reconnect should be automatically done by
the hardware. But there seems to be an issue where auto negotiation has
to be restarted manually. This happens because of link training and so
even though still connected to the partner the link never "comes back".
This needs an auto-negotiation restart.

Also, a change in xgbe-mdio is needed to get ethtool to recognize the
link down and get the link change message. This change is only
required in a backplane connection mode.

Fixes: abf0a1c2b2 ("amd-xgbe: Add support for SFP+ modules")
Co-developed-by: Sudheesh Mavila <sudheesh.mavila@amd.com>
Signed-off-by: Sudheesh Mavila <sudheesh.mavila@amd.com>
Signed-off-by: Shyam Sundar S K <Shyam-sundar.S-k@amd.com>
Acked-by: Tom Lendacky <thomas.lendacky@amd.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-02-16 14:09:45 -08:00
..
xgbe net: amd-xgbe: Reset link when the link never comes back 2021-02-16 14:09:45 -08:00
7990.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
7990.h net: 7990: Fix use correct return type for ndo_start_xmit() 2020-05-06 14:26:14 -07:00
a2065.c net: amd: a2065: Use print_hex_dump_debug() helper 2020-01-12 16:20:26 -08:00
a2065.h
amd8111e.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
amd8111e.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 13 2019-05-21 11:28:45 +02:00
ariadne.c netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00
ariadne.h
atarilance.c net: atarilance: Replace zero-length array with flexible-array 2020-05-11 13:18:54 -07:00
au1000_eth.c net/au1000-eth: stop using DMA_ATTR_NON_CONSISTENT 2020-09-25 06:20:42 +02:00
au1000_eth.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 400 2019-06-05 17:37:13 +02:00
declance.c drivers: net: declance: fix comparing pointer to 0 2020-01-21 12:04:57 +01:00
hplance.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
hplance.h
Kconfig net: remove am79c961a driver 2020-10-30 21:57:03 +01:00
lance.c netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00
Makefile net: remove am79c961a driver 2020-10-30 21:57:03 +01:00
mvme147.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00
ni65.c netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00
ni65.h
nmclan_cs.c net/amd: Remove useless driver version 2020-02-24 11:24:47 -08:00
pcnet32.c pcnet32: switch from 'pci_' to 'dma_' API 2020-07-13 17:54:31 -07:00
sun3lance.c net: sun3lance: Remove redundant checks in interrupt handler 2020-09-29 14:02:54 -07:00
sunlance.c mm: reorder includes after introduction of linux/pgtable.h 2020-06-09 09:39:13 -07:00