diff options
author | Jiri Pirko <jiri@mellanox.com> | 2015-09-24 04:02:48 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-09-25 01:59:22 -0400 |
commit | 79a62eb22a5fa4ee5e1f21af5e1f19f493dac5e0 (patch) | |
tree | ea046def57317217e97d7ed1a28c71e86a38e077 /net/dsa | |
parent | 9f6467cf229a0e8a7580401b07de2a76e4c8618d (diff) |
dsa: use prepare/commit switchdev transaction helpers
The enum is going to disappear, use the helpers instead.
Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dsa')
-rw-r--r-- | net/dsa/slave.c | 15 |
1 files changed, 5 insertions, 10 deletions
diff --git a/net/dsa/slave.c b/net/dsa/slave.c index 748cc6394bbb..71a11559b65f 100644 --- a/net/dsa/slave.c +++ b/net/dsa/slave.c | |||
@@ -251,8 +251,7 @@ static int dsa_slave_port_vlan_add(struct net_device *dev, | |||
251 | u16 vid; | 251 | u16 vid; |
252 | int err; | 252 | int err; |
253 | 253 | ||
254 | switch (trans->ph) { | 254 | if (switchdev_trans_ph_prepare(trans)) { |
255 | case SWITCHDEV_TRANS_PREPARE: | ||
256 | if (!ds->drv->port_vlan_add || !ds->drv->port_pvid_set) | 255 | if (!ds->drv->port_vlan_add || !ds->drv->port_pvid_set) |
257 | return -EOPNOTSUPP; | 256 | return -EOPNOTSUPP; |
258 | 257 | ||
@@ -264,8 +263,7 @@ static int dsa_slave_port_vlan_add(struct net_device *dev, | |||
264 | vlan->vid_end); | 263 | vlan->vid_end); |
265 | if (err) | 264 | if (err) |
266 | return err; | 265 | return err; |
267 | break; | 266 | } else { |
268 | case SWITCHDEV_TRANS_COMMIT: | ||
269 | for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) { | 267 | for (vid = vlan->vid_begin; vid <= vlan->vid_end; ++vid) { |
270 | err = ds->drv->port_vlan_add(ds, p->port, vid, | 268 | err = ds->drv->port_vlan_add(ds, p->port, vid, |
271 | vlan->flags & | 269 | vlan->flags & |
@@ -275,9 +273,6 @@ static int dsa_slave_port_vlan_add(struct net_device *dev, | |||
275 | if (err) | 273 | if (err) |
276 | return err; | 274 | return err; |
277 | } | 275 | } |
278 | break; | ||
279 | default: | ||
280 | return -EOPNOTSUPP; | ||
281 | } | 276 | } |
282 | 277 | ||
283 | return 0; | 278 | return 0; |
@@ -356,9 +351,9 @@ static int dsa_slave_port_fdb_add(struct net_device *dev, | |||
356 | struct dsa_switch *ds = p->parent; | 351 | struct dsa_switch *ds = p->parent; |
357 | int ret = -EOPNOTSUPP; | 352 | int ret = -EOPNOTSUPP; |
358 | 353 | ||
359 | if (trans->ph == SWITCHDEV_TRANS_PREPARE) | 354 | if (switchdev_trans_ph_prepare(trans)) |
360 | ret = ds->drv->port_fdb_add ? 0 : -EOPNOTSUPP; | 355 | ret = ds->drv->port_fdb_add ? 0 : -EOPNOTSUPP; |
361 | else if (trans->ph == SWITCHDEV_TRANS_COMMIT) | 356 | else |
362 | ret = ds->drv->port_fdb_add(ds, p->port, fdb->addr, fdb->vid); | 357 | ret = ds->drv->port_fdb_add(ds, p->port, fdb->addr, fdb->vid); |
363 | 358 | ||
364 | return ret; | 359 | return ret; |
@@ -465,7 +460,7 @@ static int dsa_slave_port_attr_set(struct net_device *dev, | |||
465 | 460 | ||
466 | switch (attr->id) { | 461 | switch (attr->id) { |
467 | case SWITCHDEV_ATTR_PORT_STP_STATE: | 462 | case SWITCHDEV_ATTR_PORT_STP_STATE: |
468 | if (trans->ph == SWITCHDEV_TRANS_COMMIT) | 463 | if (switchdev_trans_ph_commit(trans)) |
469 | ret = dsa_slave_stp_update(dev, attr->u.stp_state); | 464 | ret = dsa_slave_stp_update(dev, attr->u.stp_state); |
470 | break; | 465 | break; |
471 | default: | 466 | default: |