]> git.baikalelectronics.ru Git - kernel.git/commit
net: dsa: mv88e6xxx: fix port VLAN maps
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Thu, 28 Jan 2016 21:54:37 +0000 (16:54 -0500)
committerDavid S. Miller <davem@davemloft.net>
Sat, 30 Jan 2016 03:41:27 +0000 (19:41 -0800)
commit812d6efad9eaaa4b834dafb8ab56d753683630b8
treee1e9d62ba33b564b19049f5ac75d3f4832baf2fa
parent60e1ea965e293b188750dee72251b0d555f22f79
net: dsa: mv88e6xxx: fix port VLAN maps

Currently the port based VLAN maps should be configured to allow every
port to egress frames on all other ports, except themselves.

The debugfs interface shows that they are misconfigured. For instance, a
7-port switch has the following content in the related register 0x06:

       GLOBAL GLOBAL2 SERDES   0    1    2    3    4    5    6
    ...
    6:  1fa4    1f0f       4   7f   7e   7d   7c   7b   7a   79
    ...

This means that port 3 is allowed to talk to port 2-6, but cannot talk
to ports 0 and 1. With this fix, port 3 can correctly talk to all ports
except 3 itself:

       GLOBAL GLOBAL2 SERDES   0    1    2    3    4    5    6
    ...
    6:  1fa4    1f0f       4   7e   7d   7b   77   6f   5f   3f
    ...

Fixes: 6bd23baacfb7 ("net: dsa: mv88e6xxx: bridges do not need an FID")
Reported-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Tested-by: Kevin Smith <kevin.smith@elecsyscorp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/dsa/mv88e6xxx.c