On Sun, 10 May 2020 at 19:43, Vladimir Oltean <olte...@gmail.com> wrote: > > From: Vladimir Oltean <vladimir.olt...@nxp.com> > > This series is an attempt to support as much as possible in terms of > traffic I/O from the network stack with the only dsa_8021q user thus > far, sja1105. > > The hardware doesn't support pushing a second VLAN tag to packets that > are already tagged, so our only option is to combine the dsa_8021q with > the user tag into a single tag and decode that on the CPU. > > The assumption is that there is a type of use cases for which 7 VLANs > per port are more than sufficient, and that there's another type of use > cases where the full 4096 entries are barely enough. Those use cases are > very different from one another, so I prefer trying to give both the > best experience by creating this best_effort_vlan_filtering knob to > select the mode in which they want to operate in. > > This series depends on "[v4,resend,net-next,0/4] Cross-chip bridging for > disjoint DSA trees", submitted here: > https://patchwork.ozlabs.org/project/netdev/cover/20200510163743.18032-1-olte...@gmail.com/ > > Russell King (1): > net: dsa: provide an option for drivers to always receive bridge VLANs > > Vladimir Oltean (14): > net: dsa: tag_8021q: introduce a vid_is_dsa_8021q helper > net: dsa: sja1105: keep the VLAN awareness state in a driver variable > net: dsa: sja1105: deny alterations of dsa_8021q VLANs from the bridge > net: dsa: sja1105: save/restore VLANs using a delta commit method > net: dsa: sja1105: allow VLAN configuration from the bridge in all > states > net: dsa: sja1105: exit sja1105_vlan_filtering when called multiple > times > net: dsa: sja1105: prepare tagger for handling DSA tags and VLAN > simultaneously > net: dsa: tag_8021q: support up to 8 VLANs per port using sub-VLANs > net: dsa: tag_sja1105: implement sub-VLAN decoding > net: dsa: sja1105: add a new best_effort_vlan_filtering devlink > parameter > net: dsa: sja1105: add packing ops for the Retagging Table > net: dsa: sja1105: implement a common frame memory partitioning > function > net: dsa: sja1105: implement VLAN retagging for dsa_8021q sub-VLANs > docs: net: dsa: sja1105: document the best_effort_vlan_filtering > option > > .../networking/devlink-params-sja1105.txt | 27 + > Documentation/networking/dsa/sja1105.rst | 211 +++- > drivers/net/dsa/sja1105/sja1105.h | 29 + > .../net/dsa/sja1105/sja1105_dynamic_config.c | 33 + > drivers/net/dsa/sja1105/sja1105_main.c | 1072 +++++++++++++++-- > drivers/net/dsa/sja1105/sja1105_spi.c | 6 + > .../net/dsa/sja1105/sja1105_static_config.c | 62 +- > .../net/dsa/sja1105/sja1105_static_config.h | 16 + > drivers/net/dsa/sja1105/sja1105_vl.c | 20 +- > include/linux/dsa/8021q.h | 42 +- > include/linux/dsa/sja1105.h | 5 + > include/net/dsa.h | 1 + > net/dsa/slave.c | 12 +- > net/dsa/tag_8021q.c | 108 +- > net/dsa/tag_sja1105.c | 38 +- > 15 files changed, 1443 insertions(+), 239 deletions(-) > create mode 100644 Documentation/networking/devlink-params-sja1105.txt > > -- > 2.17.1 >
Sorry to repost before receiving any feedback, but there are some small fixups I need to make. Thanks, -Vladimir