net: dsa: add cross-chip multicast support
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Thu, 15 Jun 2017 20:14:48 +0000 (16:14 -0400)
committerDavid S. Miller <davem@davemloft.net>
Fri, 16 Jun 2017 19:21:14 +0000 (15:21 -0400)
commita1a6b7ea7f2de270a51360cc48e7c49f7a283dda
tree973f9656be62d80eccb274d6074ddd2438ae9433
parent6a2fb0e99f9cab349dce0a36862b0cd370036452
net: dsa: add cross-chip multicast support

Similarly to how cross-chip VLAN works, define a bitmap of multicast
group members for a switch, now including its DSA ports, so that
multicast traffic can be sent to all switches of the fabric.

A switch may drop the frames if no user port is a member.

This brings support for multicast in a multi-chip environment.
As of now, all switches of the fabric must support the multicast
operations in order to program a single fabric port.

Reported-by: Jason Cobham <jcobham@questertangent.com>
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Tested-by: Jason Cobham <jcobham@questertangent.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/switch.c