OSDN Git Service

net: dsa: build tag_8021q.c as part of DSA core
authorVladimir Oltean <vladimir.oltean@nxp.com>
Mon, 19 Jul 2021 17:14:47 +0000 (20:14 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 20 Jul 2021 13:36:42 +0000 (06:36 -0700)
commit8b6e638b4be2ad77f61fb93b4e1776c6ccc2edab
treef2217379fd6adeb47e5f4e57cfbeaec0184ac79d
parentcedf467064b6b8764fdb2ee6b9e3d18bc81a9d8f
net: dsa: build tag_8021q.c as part of DSA core

Upcoming patches will add tag_8021q related logic to switch.c and
port.c, in order to allow it to make use of cross-chip notifiers.
In addition, a struct dsa_8021q_context *ctx pointer will be added to
struct dsa_switch.

It seems fairly low-reward to #ifdef the *ctx from struct dsa_switch and
to provide shim implementations of the entire tag_8021q.c calling
surface (not even clear what to do about the tag_8021q cross-chip
notifiers to avoid compiling them). The runtime overhead for switches
which don't use tag_8021q is fairly small because all helpers will check
for ds->tag_8021q_ctx being a NULL pointer and stop there.

So let's make it part of dsa_core.o.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/dsa/Kconfig
net/dsa/Makefile
net/dsa/tag_8021q.c