瀏覽代碼

net: phy: resume/suspend PHYs on attach/detach

This ensures PHYs are resumed on attach and suspended on detach.

Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
Acked-by: Mugunthan V N <mugunthanvnm@ti.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Sebastian Hesselbarth 11 年之前
父節點
當前提交
1211ce5307
共有 1 個文件被更改,包括 3 次插入0 次删除
  1. 3 0
      drivers/net/phy/phy_device.c

+ 3 - 0
drivers/net/phy/phy_device.c

@@ -624,6 +624,8 @@ static int phy_attach_direct(struct net_device *dev, struct phy_device *phydev,
 	if (err)
 	if (err)
 		phy_detach(phydev);
 		phy_detach(phydev);
 
 
+	phy_resume(phydev);
+
 	return err;
 	return err;
 }
 }
 
 
@@ -669,6 +671,7 @@ void phy_detach(struct phy_device *phydev)
 {
 {
 	phydev->attached_dev->phydev = NULL;
 	phydev->attached_dev->phydev = NULL;
 	phydev->attached_dev = NULL;
 	phydev->attached_dev = NULL;
+	phy_suspend(phydev);
 
 
 	/* If the device had no specific driver before (i.e. - it
 	/* If the device had no specific driver before (i.e. - it
 	 * was using the generic driver), we unbind the device
 	 * was using the generic driver), we unbind the device