net: dsa: remove tag_protocol from dsa_switch
authorVivien Didelot <vivien.didelot@savoirfairelinux.com>
Mon, 18 Apr 2016 22:24:04 +0000 (18:24 -0400)
committerDavid S. Miller <davem@davemloft.net>
Thu, 21 Apr 2016 17:43:11 +0000 (13:43 -0400)
Having the tag protocol in dsa_switch_driver for setup time and in
dsa_switch_tree for runtime is enough. Remove dsa_switch's one.

Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/dsa.h
net/dsa/dsa.c

index c4bc42b..2d280ab 100644 (file)
@@ -135,11 +135,6 @@ struct dsa_switch {
         */
        void *priv;
 
-       /*
-        * Tagging protocol understood by this switch
-        */
-       enum dsa_tag_protocol   tag_protocol;
-
        /*
         * Configuration data for this switch.
         */
index efa612f..d61ceed 100644 (file)
@@ -267,7 +267,7 @@ static int dsa_switch_setup_one(struct dsa_switch *ds, struct device *parent)
         * switch.
         */
        if (dst->cpu_switch == index) {
-               switch (ds->tag_protocol) {
+               switch (drv->tag_protocol) {
 #ifdef CONFIG_NET_DSA_TAG_DSA
                case DSA_TAG_PROTO_DSA:
                        dst->rcv = dsa_netdev_ops.rcv;
@@ -295,7 +295,7 @@ static int dsa_switch_setup_one(struct dsa_switch *ds, struct device *parent)
                        goto out;
                }
 
-               dst->tag_protocol = ds->tag_protocol;
+               dst->tag_protocol = drv->tag_protocol;
        }
 
        /*
@@ -411,7 +411,6 @@ dsa_switch_setup(struct dsa_switch_tree *dst, int index,
        ds->pd = pd;
        ds->drv = drv;
        ds->priv = priv;
-       ds->tag_protocol = drv->tag_protocol;
        ds->master_dev = host_dev;
 
        ret = dsa_switch_setup_one(ds, parent);