]> git.baikalelectronics.ru Git - kernel.git/commitdiff
net: dsa: b53: Do not clear existing mirrored port mask
authorFlorian Fainelli <f.fainelli@gmail.com>
Sat, 5 Oct 2019 22:05:18 +0000 (15:05 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 6 Oct 2019 13:55:14 +0000 (15:55 +0200)
Clearing the existing bitmask of mirrored ports essentially prevents us
from capturing more than one port at any given time. This is clearly
wrong, do not clear the bitmask prior to setting up the new port.

Reported-by: Hubert Feurstein <h.feurstein@gmail.com>
Fixes: b120db66d910 ("net: dsa: b53: Add support for port mirroring")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Reviewed-by: Vivien Didelot <vivien.didelot@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/b53/b53_common.c

index 526ba2ab66f10b027ec5861d481be26a26e890af..cc3536315eff55c5bbc1942f09490fa44ca900e7 100644 (file)
@@ -1845,7 +1845,6 @@ int b53_mirror_add(struct dsa_switch *ds, int port,
                loc = B53_EG_MIR_CTL;
 
        b53_read16(dev, B53_MGMT_PAGE, loc, &reg);
-       reg &= ~MIRROR_MASK;
        reg |= BIT(port);
        b53_write16(dev, B53_MGMT_PAGE, loc, reg);