linux_dsm_epyc7002/drivers/net
Florian Fainelli c51e424dc7 net: stmmac: Fix lack of link transition for fixed PHYs
Commit 52f95bbfcf ("stmmac: fix adjust link call in case of a switch
is attached") added some logic to avoid polling the fixed PHY and
therefore invoking the adjust_link callback more than once, since this
is a fixed PHY and link events won't be generated.

This works fine the first time, because we start with phydev->irq =
PHY_POLL, so we call adjust_link, then we set phydev->irq =
PHY_IGNORE_INTERRUPT and we stop polling the PHY.

Now, if we called ndo_close(), which calls both phy_stop() and does an
explicit netif_carrier_off(), we end up with a link down. Upon calling
ndo_open() again, despite starting the PHY state machine, we have
PHY_IGNORE_INTERRUPT set, and we generate no link event at all, so the
link is permanently down.

Fixes: 52f95bbfcf ("stmmac: fix adjust link call in case of a switch is attached")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Giuseppe Cavallaro <peppe.cavallaro@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-14 16:39:15 -05:00
..
appletalk
arcnet
bonding Merge branch 'work.uaccess2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2016-10-11 23:38:39 -07:00
caif
can can: sja1000: plx_pci: Add support for Moxa CAN devices 2016-10-31 20:48:19 +01:00
cris
dsa net: dsa: bcm_sf2: Do not rely on kexec_in_progress 2016-10-22 16:17:53 -04:00
ethernet net: stmmac: Fix lack of link transition for fixed PHYs 2016-11-14 16:39:15 -05:00
fddi
fjes
hamradio 6pack: fix buffer length mishandling 2016-09-20 22:51:30 -04:00
hippi
hyperv Revert "hv_netvsc: report vmbus name in ethtool" 2016-10-29 15:03:14 -04:00
ieee802154 fakelb: fix schedule while atomic 2016-09-19 20:19:34 +02:00
ipvlan ipvlan: Introduce l3s mode 2016-09-19 01:25:22 -04:00
irda
phy phy: fix device reference leaks 2016-11-07 13:17:29 -05:00
plip
ppp ppp: declare PPP devices as LLTX 2016-08-31 14:33:09 -07:00
slip
team team: loadbalance: push lacpdus to exact delivery 2016-08-26 13:08:59 -07:00
usb r8152: Fix error path in open function 2016-11-13 12:03:20 -05:00
vmxnet3 vmxnet3: avoid assumption about invalid dma_pa in vmxnet3_set_mc() 2016-10-15 17:47:32 -04:00
wan net: wan: slic_ds26522: Allow driver to built if COMPILE_TEST is enabled 2016-10-14 10:11:49 -04:00
wimax
wireless brcmfmac: avoid maybe-uninitialized warning in brcmf_cfg80211_start_ap 2016-10-27 18:04:54 +03:00
xen-netback xen-netback: fix type mismatch warning 2016-10-13 11:02:25 -04:00
dummy.c
eql.c
geneve.c geneve: avoid using stale geneve socket. 2016-10-29 20:56:31 -04:00
gtp.c
ifb.c
Kconfig ipvlan: Fix dependency issue 2016-09-20 22:55:23 -04:00
LICENSE.SRC
loopback.c
macsec.c macsec: Fix header length if SCI is added if explicitly disabled 2016-10-27 16:21:00 -04:00
macvlan.c driver: macvlan: Destroy new macvlan port if macvlan_common_newlink failed. 2016-11-09 13:14:47 -05:00
macvtap.c
Makefile
mdio.c
mii.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tun.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2016-08-30 00:54:02 -04:00
veth.c net: veth: Set features for MPLS 2016-08-30 22:27:18 -07:00
virtio_net.c virtio-net: drop legacy features in virtio 1 mode 2016-11-07 20:35:46 -05:00
vrf.c net: Require exact match for TCP socket lookups if dif is l3mdev 2016-10-17 10:17:05 -04:00
vxlan.c vxlan: hide unused local variable 2016-11-09 18:59:50 -05:00
xen-netfront.c xen-netfront: cast grant table reference first to type int 2016-11-02 15:33:36 -04:00