mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
net: dsa: start and stop the PHY state machine
dsa_slave_open() should start the PHY library state machine for its PHY interface, and dsa_slave_close() should stop the PHY library state machine accordingly. Signed-off-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
155c6e1ad4
commit
f7f1de51ed
1 changed files with 6 additions and 0 deletions
|
@ -84,6 +84,9 @@ static int dsa_slave_open(struct net_device *dev)
|
|||
goto clear_allmulti;
|
||||
}
|
||||
|
||||
if (p->phy)
|
||||
phy_start(p->phy);
|
||||
|
||||
return 0;
|
||||
|
||||
clear_allmulti:
|
||||
|
@ -101,6 +104,9 @@ static int dsa_slave_close(struct net_device *dev)
|
|||
struct dsa_slave_priv *p = netdev_priv(dev);
|
||||
struct net_device *master = p->parent->dst->master_netdev;
|
||||
|
||||
if (p->phy)
|
||||
phy_stop(p->phy);
|
||||
|
||||
dev_mc_unsync(master, dev);
|
||||
dev_uc_unsync(master, dev);
|
||||
if (dev->flags & IFF_ALLMULTI)
|
||||
|
|
Loading…
Reference in a new issue