summaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/lan9303-core.c
diff options
context:
space:
mode:
authorVivien Didelot2017-10-16 17:12:19 +0200
committerDavid S. Miller2017-10-18 13:24:33 +0200
commitc8652c83bc84ac8db44060ced0036de7628aa5e5 (patch)
treed73285634543e8063d66da030e34a218fc76e805 /drivers/net/dsa/lan9303-core.c
parentnet: dsa: split dsa_port's netdev member (diff)
downloadkernel-qcow2-linux-c8652c83bc84ac8db44060ced0036de7628aa5e5.tar.gz
kernel-qcow2-linux-c8652c83bc84ac8db44060ced0036de7628aa5e5.tar.xz
kernel-qcow2-linux-c8652c83bc84ac8db44060ced0036de7628aa5e5.zip
net: dsa: add dsa_to_port helper
The dsa_port structure is part of DSA core data and must only be updated by the later. It is OK and sometimes necessary for the DSA drivers to access this data, but this has to be read only. For that purpose, add a dsa_to_port() helper which returns a const pointer to a dsa_port structure which must be used by DSA drivers from now on instead of digging into ds->ports[] themselves. Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/lan9303-core.c')
-rw-r--r--drivers/net/dsa/lan9303-core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/dsa/lan9303-core.c b/drivers/net/dsa/lan9303-core.c
index fecfe1fe67ea..09a748327fc6 100644
--- a/drivers/net/dsa/lan9303-core.c
+++ b/drivers/net/dsa/lan9303-core.c
@@ -863,7 +863,7 @@ static int lan9303_port_bridge_join(struct dsa_switch *ds, int port,
struct lan9303 *chip = ds->priv;
dev_dbg(chip->dev, "%s(port %d)\n", __func__, port);
- if (ds->ports[1].bridge_dev == ds->ports[2].bridge_dev) {
+ if (dsa_to_port(ds, 1)->bridge_dev == dsa_to_port(ds, 2)->bridge_dev) {
lan9303_bridge_ports(chip);
chip->is_bridged = true; /* unleash stp_state_set() */
}