diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2022-11-15 04:18:42 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2022-11-18 08:16:40 +0300 |
commit | 9999f85ba34651726018e0f50d4afdf6c8cc8096 (patch) | |
tree | 90c46842267dd643f662bfdf680fb4157c36c3b1 /net/dsa/dsa.c | |
parent | 4a8c14384fa96c0bd6c1a534667f2a72165faacf (diff) | |
download | linux-9999f85ba34651726018e0f50d4afdf6c8cc8096.tar.xz |
net: dsa: stop exposing tag proto module helpers to the world
The DSA tagging protocol driver macros are in the public include/net/dsa.h
probably because that's also where the DSA_TAG_PROTO_*_VALUE macros are
(MODULE_ALIAS_DSA_TAG_DRIVER hinges on those macro definitions).
But there is no reason to expose these helpers to <net/dsa.h>. That
header is shared between switch drivers (drivers/net/dsa/), tagging
protocol drivers (net/dsa/tag_*.c), the DSA core (net/dsa/ sans tag_*.c),
and the rest of the world (DSA master drivers, network stack, etc).
Too much exposure.
On the other hand, net/dsa/dsa_priv.h is included only by the DSA core
and by DSA tagging protocol drivers (or IOW, "friend" modules). Also a
bit too much exposure - I've contemplated creating a new header which is
only included by tagging protocol drivers, but completely separating a
new dsa_tag_proto.h from dsa_priv.h is not immediately trivial - for
example dsa_slave_to_port() is used both from the fast path and from the
control path.
So for now, move these definitions to dsa_priv.h which at least hides
them from the world.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Tested-by: Michael Walle <michael@walle.cc>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/dsa/dsa.c')
0 files changed, 0 insertions, 0 deletions