diff options
author | Rafał Miłecki <zajec5@gmail.com> | 2013-12-11 07:44:14 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-12-11 13:40:48 -0500 |
commit | d469962f858b71ec43112c256e3df4a60b00beeb (patch) | |
tree | ed01efa8052f6590e4664cc97fcd85b3e6ed8527 /drivers/net/ethernet/broadcom/bgmac.c | |
parent | 4f8f61eb4341be07b4a8d046f646fcf934a89949 (diff) | |
download | op-kernel-dev-d469962f858b71ec43112c256e3df4a60b00beeb.zip op-kernel-dev-d469962f858b71ec43112c256e3df4a60b00beeb.tar.gz |
bgmac: reset cached MAC state during chip reset
Without this bgmac_adjust_link didn't know it should re-initialize MAC
state. This led to the MAC not working after if down & up routine.
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/broadcom/bgmac.c')
-rw-r--r-- | drivers/net/ethernet/broadcom/bgmac.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/broadcom/bgmac.c b/drivers/net/ethernet/broadcom/bgmac.c index fd6a22e..273b9f9 100644 --- a/drivers/net/ethernet/broadcom/bgmac.c +++ b/drivers/net/ethernet/broadcom/bgmac.c @@ -953,6 +953,8 @@ static void bgmac_chip_reset(struct bgmac *bgmac) BGMAC_CMDCFG_CFE | BGMAC_CMDCFG_SR, false); + bgmac->mac_speed = SPEED_UNKNOWN; + bgmac->mac_duplex = DUPLEX_UNKNOWN; bgmac_clear_mib(bgmac); if (core->id.id == BCMA_CORE_4706_MAC_GBIT) |