Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1b3fa5cf authored by Esben Haabendal's avatar Esben Haabendal Committed by David S. Miller
Browse files

net: ll_temac: Cleanup multicast filter on change



Avoid leaving old address table entries when using multicast.  If more than
one multicast address were removed, only the first removed address would
actually be cleared.

Signed-off-by: default avatarEsben Haabendal <esben@geanix.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 1bd33bf0
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -485,10 +485,13 @@ static void temac_set_multicast_list(struct net_device *ndev)
						    multi_addr_lsw);
			i++;
		}
	} else {
	}

	/* Clear all or remaining/unused address table entries */
	while (i < MULTICAST_CAM_TABLE_NUM) {
		temac_indirect_out32_locked(lp, XTE_MAW0_OFFSET, 0);
		temac_indirect_out32_locked(lp, XTE_MAW1_OFFSET, i << 16);
		}
		i++;
	}

	/* Enable address filter block if currently disabled */