]> git.hungrycats.org Git - linux/commit
drivers: net: cpsw: fix multicast flush in dual emac mode
authorMugunthan V N <mugunthanvnm@ti.com>
Tue, 13 Jan 2015 12:05:49 +0000 (17:35 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 27 Jan 2015 16:29:40 +0000 (08:29 -0800)
commit76da8f966ff47e0f20ff7f9eb8559188d4797b0a
treed47b75d994cf90c691559d5e345d7cbbdd1223af
parentd8682e1d2663f516d0da60ecdcbbcc77c78af8b3
drivers: net: cpsw: fix multicast flush in dual emac mode

commit 25906052d953d3fbdb7e19480b9de5e6bb949f3f upstream.

Since ALE table is a common resource for both the interfaces in Dual EMAC
mode and while bringing up the second interface in cpsw_ndo_set_rx_mode()
all the multicast entries added by the first interface is flushed out and
only second interface multicast addresses are added. Fixing this by
flushing multicast addresses based on dual EMAC port vlans which will not
affect the other emac port multicast addresses.

Fixes: d9ba8f9 (driver: net: ethernet: cpsw: dual emac interface implementation)
Signed-off-by: Mugunthan V N <mugunthanvnm@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/ti/cpsw.c
drivers/net/ethernet/ti/cpsw_ale.c
drivers/net/ethernet/ti/cpsw_ale.h