From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754560AbbFBB2F (ORCPT ); Mon, 1 Jun 2015 21:28:05 -0400 Received: from mail.savoirfairelinux.com ([209.172.62.77]:52382 "EHLO mail.savoirfairelinux.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754243AbbFBB17 (ORCPT ); Mon, 1 Jun 2015 21:27:59 -0400 From: Vivien Didelot To: netdev@vger.kernel.org Cc: Vivien Didelot , "David S. Miller" , Guenter Roeck , Florian Fainelli , Andrew Lunn , "Scott Feldman" , Jiri Pirko , Jerome Oufella , linux-kernel@vger.kernel.org, kernel@savoirfairelinux.com, "Chris Healy" Subject: [RFC 0/9] net: dsa: mv88e6352: add 802.1q VLAN support Date: Mon, 1 Jun 2015 21:27:41 -0400 Message-Id: <1433208470-25338-1-git-send-email-vivien.didelot@savoirfairelinux.com> X-Mailer: git-send-email 2.4.1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This patchset brings support for the 802.1q and VLAN operations to the Marvell 88E6352 switch and compatibles. The patch 1/9 adds more glue between switchdev and DSA. Patches 2/9 to 4/9 add the VLAN operations to DSA and the mv88e6xxx family of switches. Patches 5/9 to 9/9 is the necessary configuration that I figured out during the VLAN tests I did. So far, I was able to confirm the following scenarios: * Port untagged to Port untagged * Port untagged to Port tagged * Port tagged to Port tagged * Port untagged to CPU tagged * Port tagged to CPU tagged * CPU tagged to port tagged >>From the userspace, here's a few commands I use to start using VLANs: # create bridge ip link set dev eth0 up ip link add name br0 type bridge echo 1 > /sys/class/net/br0/bridge/vlan_filtering ip link set dev br0 up # setup switch ports for i in $(seq 0 4); do ip link set dev swp$i up master br0 # HACK: bridge assumes the following but doesn't call ndo_bridge_setlink bridge vlan add vid 1 pvid untagged dev swp$i master self done Best, -v Vivien Didelot (9): net: dsa: add basic support for switchdev obj net: dsa: add basic support for VLAN operations net: dsa: mv88e6xxx: add support for VTU ops net: dsa: mv88e6352: add support for VLAN net: dsa: mv88e6352: disable mirroring net: dsa: mv88e6352: allow egress of unknown multicast net: dsa: mv88e6352: lock CPU port from learning addresses net: dsa: mv88e6352: set port 802.1Q mode to Secure net: dsa: fix EDSA frame from hwaccel frame drivers/net/dsa/mv88e6352.c | 12 +- drivers/net/dsa/mv88e6xxx.c | 303 ++++++++++++++++++++++++++++++++++++++++++-- drivers/net/dsa/mv88e6xxx.h | 39 ++++++ include/net/dsa.h | 7 + net/dsa/slave.c | 100 ++++++++++++++- net/dsa/tag_edsa.c | 5 + 6 files changed, 446 insertions(+), 20 deletions(-) -- 2.4.1