Commit 62fc9587 authored by Vivien Didelot's avatar Vivien Didelot Committed by David S. Miller

net: dsa: use temporary dsa_device_ops variable

When resolving the DSA tagging protocol used by a CPU switch, use a
temporary "tag_ops" variable to store the dsa_device_ops instead of
using directly dst->tag_ops. This will make the future patches moving
this pointer around easier to read.

There is no functional changes.
Signed-off-by: default avatarVivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 7ec764ee
...@@ -485,6 +485,7 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index, ...@@ -485,6 +485,7 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index,
struct dsa_switch_tree *dst, struct dsa_switch_tree *dst,
struct dsa_switch *ds) struct dsa_switch *ds)
{ {
const struct dsa_device_ops *tag_ops;
enum dsa_tag_protocol tag_protocol; enum dsa_tag_protocol tag_protocol;
struct net_device *ethernet_dev; struct net_device *ethernet_dev;
struct device_node *ethernet; struct device_node *ethernet;
...@@ -514,13 +515,14 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index, ...@@ -514,13 +515,14 @@ static int dsa_cpu_parse(struct dsa_port *port, u32 index,
ds->cpu_port_mask |= BIT(index); ds->cpu_port_mask |= BIT(index);
tag_protocol = ds->ops->get_tag_protocol(ds); tag_protocol = ds->ops->get_tag_protocol(ds);
dst->tag_ops = dsa_resolve_tag_protocol(tag_protocol); tag_ops = dsa_resolve_tag_protocol(tag_protocol);
if (IS_ERR(dst->tag_ops)) { if (IS_ERR(tag_ops)) {
dev_warn(ds->dev, "No tagger for this switch\n"); dev_warn(ds->dev, "No tagger for this switch\n");
ds->cpu_port_mask &= ~BIT(index); ds->cpu_port_mask &= ~BIT(index);
return PTR_ERR(dst->tag_ops); return PTR_ERR(tag_ops);
} }
dst->tag_ops = tag_ops;
dst->rcv = dst->tag_ops->rcv; dst->rcv = dst->tag_ops->rcv;
return 0; return 0;
......
...@@ -144,13 +144,15 @@ static int dsa_switch_setup_one(struct dsa_switch *ds, ...@@ -144,13 +144,15 @@ static int dsa_switch_setup_one(struct dsa_switch *ds,
* switch. * switch.
*/ */
if (dst->cpu_dp->ds == ds) { if (dst->cpu_dp->ds == ds) {
const struct dsa_device_ops *tag_ops;
enum dsa_tag_protocol tag_protocol; enum dsa_tag_protocol tag_protocol;
tag_protocol = ops->get_tag_protocol(ds); tag_protocol = ops->get_tag_protocol(ds);
dst->tag_ops = dsa_resolve_tag_protocol(tag_protocol); tag_ops = dsa_resolve_tag_protocol(tag_protocol);
if (IS_ERR(dst->tag_ops)) if (IS_ERR(tag_ops))
return PTR_ERR(dst->tag_ops); return PTR_ERR(tag_ops);
dst->tag_ops = tag_ops;
dst->rcv = dst->tag_ops->rcv; dst->rcv = dst->tag_ops->rcv;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment