summaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorTobias Waldekranz <tobias@waldekranz.com>2021-04-20 20:53:10 +0200
committerDavid S. Miller <davem@davemloft.net>2021-04-21 01:51:20 +0200
commitdeff710703d80c942c9c85a3f00a053025cfb1e4 (patch)
treef0b96b9a8be1c7c28cc0d1ad8212c3a3ee85fe46 /include/net
parentnet: dsa: Only notify CPU ports of changes to the tag protocol (diff)
downloadlinux-deff710703d80c942c9c85a3f00a053025cfb1e4.tar.xz
linux-deff710703d80c942c9c85a3f00a053025cfb1e4.zip
net: dsa: Allow default tag protocol to be overridden from DT
Some combinations of tag protocols and Ethernet controllers are incompatible, and it is hard for the driver to keep track of these. Therefore, allow the device tree author (typically the board vendor) to inform the driver of this fact by selecting an alternate protocol that is known to work. Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/dsa.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h
index b52e9b057be4..507082959aa4 100644
--- a/include/net/dsa.h
+++ b/include/net/dsa.h
@@ -149,6 +149,11 @@ struct dsa_switch_tree {
/* Tagging protocol operations */
const struct dsa_device_ops *tag_ops;
+ /* Default tagging protocol preferred by the switches in this
+ * tree.
+ */
+ enum dsa_tag_protocol default_proto;
+
/*
* Configuration data for the platform device that owns
* this dsa switch tree instance.