diff options
| author | David S. Miller <davem@davemloft.net> | 2018-10-11 15:20:00 -0700 | 
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2018-10-11 15:20:00 -0700 | 
| commit | 6b9bab550cac108d86c731c207e3e74ea10eb638 (patch) | |
| tree | 03791696cc800c5e8f1461b45f72d17893639e61 | |
| parent | 052858663db31bd1ead76744df5d39d8bb703c77 (diff) | |
| parent | 54baca096386d862d19c10f58f34bf787c6b3cbe (diff) | |
| download | linux-6b9bab550cac108d86c731c207e3e74ea10eb638.tar.bz2 | |
Merge branch 'net-dsa-bcm_sf2-Couple-of-fixes'
Florian Fainelli says:
====================
net: dsa: bcm_sf2: Couple of fixes
Here are two fixes for the bcm_sf2 driver that were found during
testing unbind and analysing another issue during system
suspend/resume.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | drivers/net/dsa/bcm_sf2.c | 14 | 
1 files changed, 3 insertions, 11 deletions
| diff --git a/drivers/net/dsa/bcm_sf2.c b/drivers/net/dsa/bcm_sf2.c index e0066adcd2f3..fc8b48adf38b 100644 --- a/drivers/net/dsa/bcm_sf2.c +++ b/drivers/net/dsa/bcm_sf2.c @@ -703,7 +703,6 @@ static int bcm_sf2_sw_suspend(struct dsa_switch *ds)  static int bcm_sf2_sw_resume(struct dsa_switch *ds)  {  	struct bcm_sf2_priv *priv = bcm_sf2_to_priv(ds); -	unsigned int port;  	int ret;  	ret = bcm_sf2_sw_rst(priv); @@ -715,14 +714,7 @@ static int bcm_sf2_sw_resume(struct dsa_switch *ds)  	if (priv->hw_params.num_gphy == 1)  		bcm_sf2_gphy_enable_set(ds, true); -	for (port = 0; port < DSA_MAX_PORTS; port++) { -		if (dsa_is_user_port(ds, port)) -			bcm_sf2_port_setup(ds, port, NULL); -		else if (dsa_is_cpu_port(ds, port)) -			bcm_sf2_imp_setup(ds, port); -	} - -	bcm_sf2_enable_acb(ds); +	ds->ops->setup(ds);  	return 0;  } @@ -1173,10 +1165,10 @@ static int bcm_sf2_sw_remove(struct platform_device *pdev)  {  	struct bcm_sf2_priv *priv = platform_get_drvdata(pdev); -	/* Disable all ports and interrupts */  	priv->wol_ports_mask = 0; -	bcm_sf2_sw_suspend(priv->dev->ds);  	dsa_unregister_switch(priv->dev->ds); +	/* Disable all ports and interrupts */ +	bcm_sf2_sw_suspend(priv->dev->ds);  	bcm_sf2_mdio_unregister(priv);  	return 0; |