diff options
Diffstat (limited to 'drivers/net/dsa/bcm_sf2.c')
| -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; |