Hi all, This patchset brings full support for hardware VLANs in DSA, and the Marvell 88E6352 and compatible switch chips.
Patches 1/4 to 3/4 are ready to be applied. However, patch 4/4 brought some concerns about the management of the forwarding database [1]. That might be updated in future patches though. Below is an example of what can be done with this patchset. "VID 550: 1t 3u" "VID 1000: 2t" "VID 1200: 2t 4t" The VLAN setup above can be achieved with the following bridge commands: bridge vlan add vid 550 dev swp1 master bridge vlan add vid 550 dev swp3 master untagged pvid bridge vlan add vid 1000 dev swp2 master bridge vlan add vid 1200 dev swp2 master bridge vlan add vid 1200 dev swp4 master Removing the port 1 from VLAN 550 is done with: bridge vlan del vid 550 dev swp1 The bridge command would output the following setup: # bridge vlan port vlan ids swp0 None swp0 swp1 None swp1 swp2 1000 1200 swp2 1000 1200 swp3 550 PVID Egress Untagged swp3 550 PVID Egress Untagged swp4 1200 swp4 1200 br0 None Assuming that swp5 is the CPU port, the "vtu" debugfs file would show: # cat /sys/kernel/debug/dsa0/vtu VID FID SID P0 P1 P2 P3 P4 P5 P6 550 562 0 x x x u x t x 1000 1012 0 x x t x x t x 1200 1212 0 x x t x t t x Cheers, -v [1] https://lkml.org/lkml/2015/6/1/752 Vivien Didelot (4): net: dsa: mv88e6xxx: add debugfs interface for VTU net: dsa: add support for switchdev VLAN objects net: dsa: mv88e6xxx: add support to dump VLANs net: dsa: mv88e6xxx: add support to add/del VLANs drivers/net/dsa/mv88e6352.c | 3 + drivers/net/dsa/mv88e6xxx.c | 377 ++++++++++++++++++++++++++++++++++++++++++++ drivers/net/dsa/mv88e6xxx.h | 29 ++++ include/net/dsa.h | 9 ++ net/dsa/dsa_priv.h | 6 + net/dsa/slave.c | 137 ++++++++++++++++ 6 files changed, 561 insertions(+) -- 2.4.4 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html