linux/drivers/net/ethernet/broadcom
Florian Fainelli c677ba8b3c net: bcmgenet: update UMAC_CMD only when link is detected
When we bring the interface down, phy_stop() will schedule the PHY state
machine to call our link adjustment callback. By the time we do so, we
may have clock gated off the GENET hardware block, and this will cause
bus errors to happen in bcmgenet_mii_setup():

Make sure that we only touch the UMAC_CMD register when there is an
actual link. This is safe to do for two reasons:

- updating the Ethernet MAC registers only make sense when a physical
  link is present
- the PHY library state machine first set phydev->link = 0 before
  invoking phydev->adjust_link in the PHY_HALTED case

Fixes: 240524089d ("net: bcmgenet: only update UMAC_CMD if something changed")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-08-11 15:10:11 -07:00
..
bnx2x Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-07-30 13:25:49 -07:00
genet net: bcmgenet: update UMAC_CMD only when link is detected 2014-08-11 15:10:11 -07:00
b44.c net: get rid of SET_ETHTOOL_OPS 2014-05-13 17:43:20 -04:00
b44.h b44: use fixed PHY device if we do not find any 2013-12-20 20:48:49 -05:00
bcm63xx_enet.c net: get rid of SET_ETHTOOL_OPS 2014-05-13 17:43:20 -04:00
bcm63xx_enet.h bcm63xx_enet: add support Broadcom BCM6345 Ethernet 2013-06-13 17:22:08 -07:00
bcmsysport.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-07-16 14:09:34 -07:00
bcmsysport.h net: systemport: add Wake-on-LAN support 2014-07-07 20:56:47 -07:00
bgmac.c net: get rid of SET_ETHTOOL_OPS 2014-05-13 17:43:20 -04:00
bgmac.h bgmac: add support for Northstar SoC (BCM4707, BCM53018) 2014-01-04 20:25:20 -05:00
bnx2_fw.h bnx2: Rebranding bnx2 driver. 2014-06-25 16:27:27 -07:00
bnx2.c bnx2: Rebranding bnx2 driver. 2014-06-25 16:27:27 -07:00
bnx2.h bnx2: Rebranding bnx2 driver. 2014-06-25 16:27:27 -07:00
cnic_defs.h cnic: Rebranding cnic driver. 2014-06-25 16:27:27 -07:00
cnic_if.h cnic: Rebranding cnic driver. 2014-06-25 16:27:27 -07:00
cnic.c cnic: Rebranding cnic driver. 2014-06-25 16:27:27 -07:00
cnic.h cnic: Rebranding cnic driver. 2014-06-25 16:27:27 -07:00
Kconfig cnic: Rebranding cnic driver. 2014-06-25 16:27:27 -07:00
Makefile net: systemport: hook SYSTEMPORT driver in the build 2014-04-26 12:57:40 -04:00
sb1250-mac.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
tg3.c tg3: Modify tg3_tso_bug() to handle multiple TX rings 2014-08-05 16:48:14 -07:00
tg3.h tg3: Update copyright and version to 3.137 2014-05-13 18:38:51 -04:00