nvethernet: Fix continuous PHY interrupt on resume

Issue:
In suspend - PHY placed in reset with phy-reset GPIO.
With this, all register content will be gone.
After resume - PHY placed out of reset but
PHY registers will not be restored. With this change,
we are putting PHY in the proper state after resume.

Fix:
Add PHY config on resume call.

Bug 200545651

Change-Id: I138d951c42be0b00a1e22c2a45f0d58567f22df1
Signed-off-by: Mohan Thadikamalla <mohant@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2255706
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bhadram Varka <vbhadram@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: Narayan Reddy <narayanr@nvidia.com>
Reviewed-by: Bitan Biswas <bbiswas@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
This commit is contained in:
Mohan Thadikamalla
2019-12-05 11:18:05 +05:30
committed by Revanth Kumar Uppala
parent 97dede3ff9
commit 610e2b6a21

View File

@@ -3913,6 +3913,8 @@ static int ether_resume(struct ether_priv_data *pdata)
/* start the mac */
osi_start_mac(osi_core);
if (pdata->phydev && !(device_may_wakeup(&ndev->dev))) {
/* configure phy init */
phy_init_hw(pdata->phydev);
/* start phy */
phy_start(pdata->phydev);
}