Message ID | 20200807111349.20649-1-hongbo.wang@nxp.com |
---|---|
Headers | show |
Series | Add 802.1AD protocol support for dsa switch and ocelot driver | expand |
From: hongbo.wang@nxp.com Date: Fri, 7 Aug 2020 19:13:47 +0800 > From: "hongbo.wang" <hongbo.wang@nxp.com> > > 1. the patch 0001* is for setting single port into 802.1AD(QinQ) mode, > before this patch, the function dsa_slave_vlan_rx_add_vid didn't pass > the parameter "proto" to next port level, so switch's port can't get > parameter "proto" > after applying this patch, the following command can be supported: > ip link set br0 type bridge vlan_protocol 802.1ad > ip link add link swp1 name swp1.100 type vlan protocol 802.1ad id 100 > > 2. the patch 0002* is for setting QinQ related registers in ocelot > switch driver, after applying this patch, the switch(VSC99599)'s port can > enable or disable QinQ mode. > > 3. Version log > v5: > a. add devlink to enable qinq_mode of ocelot's single port > b. modify br_switchdev_port_vlan_add to pass bridge's vlan_proto to port driver > c. enable NETIF_F_HW_VLAN_STAG_FILTER in ocelot driver > v4: > a. modify slave.c to support "ip set br0 type bridge vlan_protocol 802.1ad" > b. modify ocelot.c, if enable QinQ, set VLAN_AWARE_ENA and VLAN_POP_CNT per > port when vlan_filter=1 > v3: combine two patches to one post Please defer new feature changes, like this, until the net-next tree is open again. It is closed right now. Thank you.
From: "hongbo.wang" <hongbo.wang@nxp.com> 1. the patch 0001* is for setting single port into 802.1AD(QinQ) mode, before this patch, the function dsa_slave_vlan_rx_add_vid didn't pass the parameter "proto" to next port level, so switch's port can't get parameter "proto" after applying this patch, the following command can be supported: ip link set br0 type bridge vlan_protocol 802.1ad ip link add link swp1 name swp1.100 type vlan protocol 802.1ad id 100 2. the patch 0002* is for setting QinQ related registers in ocelot switch driver, after applying this patch, the switch(VSC99599)'s port can enable or disable QinQ mode. 3. Version log v5: a. add devlink to enable qinq_mode of ocelot's single port b. modify br_switchdev_port_vlan_add to pass bridge's vlan_proto to port driver c. enable NETIF_F_HW_VLAN_STAG_FILTER in ocelot driver v4: a. modify slave.c to support "ip set br0 type bridge vlan_protocol 802.1ad" b. modify ocelot.c, if enable QinQ, set VLAN_AWARE_ENA and VLAN_POP_CNT per port when vlan_filter=1 v3: combine two patches to one post hongbo.wang (2): net: dsa: Add protocol support for 802.1AD when adding or deleting vlan for dsa switch port net: dsa: ocelot: Add support for QinQ Operation drivers/net/dsa/ocelot/felix.c | 124 +++++++++++++++++++++++++++++ drivers/net/ethernet/mscc/ocelot.c | 40 ++++++++-- include/net/switchdev.h | 1 + include/soc/mscc/ocelot.h | 4 + net/bridge/br_switchdev.c | 22 +++++ net/dsa/dsa_priv.h | 4 +- net/dsa/port.c | 6 +- net/dsa/slave.c | 53 +++++++----- net/dsa/tag_8021q.c | 4 +- 9 files changed, 228 insertions(+), 30 deletions(-)