mirror of https://gitee.com/openkylin/linux.git
net-next: dsa: make the set_addr() operation optional
Only 1 of the 3 drivers currently has a set_addr() operation. Make the set_addr() callback optional to reduce the amount of empty stubs inside the drivers. Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
06f8ec9041
commit
092183df0f
|
@ -378,9 +378,11 @@ static int dsa_switch_setup_one(struct dsa_switch *ds, struct device *parent)
|
||||||
if (ret < 0)
|
if (ret < 0)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
ret = ops->set_addr(ds, dst->master_netdev->dev_addr);
|
if (ops->set_addr) {
|
||||||
if (ret < 0)
|
ret = ops->set_addr(ds, dst->master_netdev->dev_addr);
|
||||||
goto out;
|
if (ret < 0)
|
||||||
|
goto out;
|
||||||
|
}
|
||||||
|
|
||||||
if (!ds->slave_mii_bus && ops->phy_read) {
|
if (!ds->slave_mii_bus && ops->phy_read) {
|
||||||
ds->slave_mii_bus = devm_mdiobus_alloc(parent);
|
ds->slave_mii_bus = devm_mdiobus_alloc(parent);
|
||||||
|
|
|
@ -304,9 +304,11 @@ static int dsa_ds_apply(struct dsa_switch_tree *dst, struct dsa_switch *ds)
|
||||||
if (err < 0)
|
if (err < 0)
|
||||||
return err;
|
return err;
|
||||||
|
|
||||||
err = ds->ops->set_addr(ds, dst->master_netdev->dev_addr);
|
if (ds->ops->set_addr) {
|
||||||
if (err < 0)
|
err = ds->ops->set_addr(ds, dst->master_netdev->dev_addr);
|
||||||
return err;
|
if (err < 0)
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
if (!ds->slave_mii_bus && ds->ops->phy_read) {
|
if (!ds->slave_mii_bus && ds->ops->phy_read) {
|
||||||
ds->slave_mii_bus = devm_mdiobus_alloc(ds->dev);
|
ds->slave_mii_bus = devm_mdiobus_alloc(ds->dev);
|
||||||
|
|
Loading…
Reference in New Issue