diff options
author | LEROY Christophe <christophe.leroy@c-s.fr> | 2014-10-22 11:05:47 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-10-22 23:33:13 +0400 |
commit | 8751b12cd93cc37337256f650e309b8364d40b35 (patch) | |
tree | 2bfbee572a02f0bf86800ebdeed4c0054bebacf5 /drivers/net/ethernet/freescale/fs_enet/mac-scc.c | |
parent | a63ba13eec092b70d4e5522d692eaeb2f9747387 (diff) | |
download | linux-8751b12cd93cc37337256f650e309b8364d40b35.tar.xz |
net: fs_enet: set back promiscuity mode after restart
After interface restart (eg: after link disconnection/reconnection), the bridge
function doesn't work anymore. This is due to the promiscuous mode being cleared
by the restart.
The mac-fcc already includes code to set the promiscuous mode back during the restart.
This patch adds the same handling to mac-fec and mac-scc.
Tested with bridge function on MPC885 with FEC.
Reported-by: Germain Montoies <germain.montoies@c-s.fr>
Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/freescale/fs_enet/mac-scc.c')
-rw-r--r-- | drivers/net/ethernet/freescale/fs_enet/mac-scc.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/freescale/fs_enet/mac-scc.c b/drivers/net/ethernet/freescale/fs_enet/mac-scc.c index f30411f0701f..7a184e8816a4 100644 --- a/drivers/net/ethernet/freescale/fs_enet/mac-scc.c +++ b/drivers/net/ethernet/freescale/fs_enet/mac-scc.c @@ -355,6 +355,9 @@ static void restart(struct net_device *dev) if (fep->phydev->duplex) S16(sccp, scc_psmr, SCC_PSMR_LPB | SCC_PSMR_FDE); + /* Restore multicast and promiscuous settings */ + set_multicast_list(dev); + S32(sccp, scc_gsmrl, SCC_GSMRL_ENR | SCC_GSMRL_ENT); } |