net: bcmgenet: Utilize bcmgenet_set_features() during resume/open

During driver resume and open, the HW may have lost its context/state,
utilize bcmgenet_set_features() to make sure we do restore the correct
set of features that were previously configured.

Signed-off-by: Doug Berger <opendmb@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Doug Berger 2019-12-17 16:51:12 -08:00 committed by David S. Miller
parent f63db4efdd
commit 206f54b66c

View File

@ -2884,6 +2884,11 @@ static int bcmgenet_open(struct net_device *dev)
init_umac(priv);
/* Apply features again in case we changed them while interface was
* down
*/
bcmgenet_set_features(dev, dev->features);
bcmgenet_set_hw_addr(priv, dev->dev_addr);
if (priv->internal_phy) {
@ -3687,6 +3692,9 @@ static int bcmgenet_resume(struct device *d)
genphy_config_aneg(dev->phydev);
bcmgenet_mii_config(priv->dev, false);
/* Restore enabled features */
bcmgenet_set_features(dev, dev->features);
bcmgenet_set_hw_addr(priv, dev->dev_addr);
if (priv->internal_phy) {