aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa
diff options
context:
space:
mode:
authorAndrew Lunn <andrew@lunn.ch>2016-06-04 15:16:57 -0400
committerDavid S. Miller <davem@davemloft.net>2016-06-04 17:29:53 -0400
commitc8b098086b4c744084350d2757a637ad756adf34 (patch)
tree0777d99335eff8adf732bd1cb574926b87f9d6c2 /drivers/net/dsa
parent149cafd790573294752787f5ce1dc0f99e4088d3 (diff)
net: dsa: Add a ports structure and use it in the switch structure
There are going to be more per-port members added to the switch structure. So add a port structure and move the netdev into it. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Reviewed-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa')
-rw-r--r--drivers/net/dsa/bcm_sf2.c4
-rw-r--r--drivers/net/dsa/mv88e6xxx.c27
2 files changed, 18 insertions, 13 deletions
diff --git a/drivers/net/dsa/bcm_sf2.c b/drivers/net/dsa/bcm_sf2.c
index 10ddd5a5dfb6..73df91bb0466 100644
--- a/drivers/net/dsa/bcm_sf2.c
+++ b/drivers/net/dsa/bcm_sf2.c
@@ -804,7 +804,7 @@ static int bcm_sf2_sw_fdb_dump(struct dsa_switch *ds, int port,
804 int (*cb)(struct switchdev_obj *obj)) 804 int (*cb)(struct switchdev_obj *obj))
805{ 805{
806 struct bcm_sf2_priv *priv = ds_to_priv(ds); 806 struct bcm_sf2_priv *priv = ds_to_priv(ds);
807 struct net_device *dev = ds->ports[port]; 807 struct net_device *dev = ds->ports[port].netdev;
808 struct bcm_sf2_arl_entry results[2]; 808 struct bcm_sf2_arl_entry results[2];
809 unsigned int count = 0; 809 unsigned int count = 0;
810 int ret; 810 int ret;
@@ -1248,7 +1248,7 @@ static void bcm_sf2_sw_fixed_link_update(struct dsa_switch *ds, int port,
1248 * state machine and make it go in PHY_FORCING state instead. 1248 * state machine and make it go in PHY_FORCING state instead.
1249 */ 1249 */
1250 if (!status->link) 1250 if (!status->link)
1251 netif_carrier_off(ds->ports[port]); 1251 netif_carrier_off(ds->ports[port].netdev);
1252 status->duplex = 1; 1252 status->duplex = 1;
1253 } else { 1253 } else {
1254 status->link = 1; 1254 status->link = 1;
diff --git a/drivers/net/dsa/mv88e6xxx.c b/drivers/net/dsa/mv88e6xxx.c
index c361036e7f9c..85332d9a245a 100644
--- a/drivers/net/dsa/mv88e6xxx.c
+++ b/drivers/net/dsa/mv88e6xxx.c
@@ -1327,7 +1327,7 @@ static int _mv88e6xxx_port_state(struct mv88e6xxx_priv_state *ps, int port,
1327 if (ret) 1327 if (ret)
1328 return ret; 1328 return ret;
1329 1329
1330 netdev_dbg(ds->ports[port], "PortState %s (was %s)\n", 1330 netdev_dbg(ds->ports[port].netdev, "PortState %s (was %s)\n",
1331 mv88e6xxx_port_state_names[state], 1331 mv88e6xxx_port_state_names[state],
1332 mv88e6xxx_port_state_names[oldstate]); 1332 mv88e6xxx_port_state_names[oldstate]);
1333 } 1333 }
@@ -1405,7 +1405,8 @@ static void mv88e6xxx_port_stp_state_set(struct dsa_switch *ds, int port,
1405 mutex_unlock(&ps->smi_mutex); 1405 mutex_unlock(&ps->smi_mutex);
1406 1406
1407 if (err) 1407 if (err)
1408 netdev_err(ds->ports[port], "failed to update state to %s\n", 1408 netdev_err(ds->ports[port].netdev,
1409 "failed to update state to %s\n",
1409 mv88e6xxx_port_state_names[stp_state]); 1410 mv88e6xxx_port_state_names[stp_state]);
1410} 1411}
1411 1412
@@ -1431,8 +1432,8 @@ static int _mv88e6xxx_port_pvid(struct mv88e6xxx_priv_state *ps, int port,
1431 if (ret < 0) 1432 if (ret < 0)
1432 return ret; 1433 return ret;
1433 1434
1434 netdev_dbg(ds->ports[port], "DefaultVID %d (was %d)\n", *new, 1435 netdev_dbg(ds->ports[port].netdev,
1435 pvid); 1436 "DefaultVID %d (was %d)\n", *new, pvid);
1436 } 1437 }
1437 1438
1438 if (old) 1439 if (old)
@@ -1847,7 +1848,8 @@ static int _mv88e6xxx_port_fid(struct mv88e6xxx_priv_state *ps, int port,
1847 if (ret < 0) 1848 if (ret < 0)
1848 return ret; 1849 return ret;
1849 1850
1850 netdev_dbg(ds->ports[port], "FID %d (was %d)\n", *new, fid); 1851 netdev_dbg(ds->ports[port].netdev,
1852 "FID %d (was %d)\n", *new, fid);
1851 } 1853 }
1852 1854
1853 if (old) 1855 if (old)
@@ -2028,7 +2030,7 @@ static int mv88e6xxx_port_check_hw_vlan(struct dsa_switch *ds, int port,
2028 ps->ports[port].bridge_dev) 2030 ps->ports[port].bridge_dev)
2029 break; /* same bridge, check next VLAN */ 2031 break; /* same bridge, check next VLAN */
2030 2032
2031 netdev_warn(ds->ports[port], 2033 netdev_warn(ds->ports[port].netdev,
2032 "hardware VLAN %d already used by %s\n", 2034 "hardware VLAN %d already used by %s\n",
2033 vlan.vid, 2035 vlan.vid,
2034 netdev_name(ps->ports[i].bridge_dev)); 2036 netdev_name(ps->ports[i].bridge_dev));
@@ -2078,7 +2080,7 @@ static int mv88e6xxx_port_vlan_filtering(struct dsa_switch *ds, int port,
2078 if (ret < 0) 2080 if (ret < 0)
2079 goto unlock; 2081 goto unlock;
2080 2082
2081 netdev_dbg(ds->ports[port], "802.1Q Mode %s (was %s)\n", 2083 netdev_dbg(ds->ports[port].netdev, "802.1Q Mode %s (was %s)\n",
2082 mv88e6xxx_port_8021q_mode_names[new], 2084 mv88e6xxx_port_8021q_mode_names[new],
2083 mv88e6xxx_port_8021q_mode_names[old]); 2085 mv88e6xxx_port_8021q_mode_names[old]);
2084 } 2086 }
@@ -2147,11 +2149,12 @@ static void mv88e6xxx_port_vlan_add(struct dsa_switch *ds, int port,
2147 2149
2148 for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) 2150 for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid)
2149 if (_mv88e6xxx_port_vlan_add(ps, port, vid, untagged)) 2151 if (_mv88e6xxx_port_vlan_add(ps, port, vid, untagged))
2150 netdev_err(ds->ports[port], "failed to add VLAN %d%c\n", 2152 netdev_err(ds->ports[port].netdev,
2153 "failed to add VLAN %d%c\n",
2151 vid, untagged ? 'u' : 't'); 2154 vid, untagged ? 'u' : 't');
2152 2155
2153 if (pvid && _mv88e6xxx_port_pvid_set(ps, port, vlan->vid_end)) 2156 if (pvid && _mv88e6xxx_port_pvid_set(ps, port, vlan->vid_end))
2154 netdev_err(ds->ports[port], "failed to set PVID %d\n", 2157 netdev_err(ds->ports[port].netdev, "failed to set PVID %d\n",
2155 vlan->vid_end); 2158 vlan->vid_end);
2156 2159
2157 mutex_unlock(&ps->smi_mutex); 2160 mutex_unlock(&ps->smi_mutex);
@@ -2336,7 +2339,8 @@ static void mv88e6xxx_port_fdb_add(struct dsa_switch *ds, int port,
2336 2339
2337 mutex_lock(&ps->smi_mutex); 2340 mutex_lock(&ps->smi_mutex);
2338 if (_mv88e6xxx_port_fdb_load(ps, port, fdb->addr, fdb->vid, state)) 2341 if (_mv88e6xxx_port_fdb_load(ps, port, fdb->addr, fdb->vid, state))
2339 netdev_err(ds->ports[port], "failed to load MAC address\n"); 2342 netdev_err(ds->ports[port].netdev,
2343 "failed to load MAC address\n");
2340 mutex_unlock(&ps->smi_mutex); 2344 mutex_unlock(&ps->smi_mutex);
2341} 2345}
2342 2346
@@ -2537,7 +2541,8 @@ static void mv88e6xxx_port_bridge_leave(struct dsa_switch *ds, int port)
2537 for (i = 0; i < ps->info->num_ports; ++i) 2541 for (i = 0; i < ps->info->num_ports; ++i)
2538 if (i == port || ps->ports[i].bridge_dev == bridge) 2542 if (i == port || ps->ports[i].bridge_dev == bridge)
2539 if (_mv88e6xxx_port_based_vlan_map(ps, i)) 2543 if (_mv88e6xxx_port_based_vlan_map(ps, i))
2540 netdev_warn(ds->ports[i], "failed to remap\n"); 2544 netdev_warn(ds->ports[i].netdev,
2545 "failed to remap\n");
2541 2546
2542 mutex_unlock(&ps->smi_mutex); 2547 mutex_unlock(&ps->smi_mutex);
2543} 2548}