Skip to content

Commit

Permalink
mlxbf_gige: stop PHY during open() error paths
Browse files Browse the repository at this point in the history
[ Upstream commit d6c30c5 ]

The mlxbf_gige_open() routine starts the PHY as part of normal
initialization.  The mlxbf_gige_open() routine must stop the
PHY during its error paths.

Fixes: f92e186 ("Add Mellanox BlueField Gigabit Ethernet driver")
Signed-off-by: David Thompson <davthompson@nvidia.com>
Reviewed-by: Asmaa Mnebhi <asmaa@nvidia.com>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Reviewed-by: Jiri Pirko <jiri@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
dthompso authored and gregkh committed Apr 10, 2024
1 parent 832d876 commit 0c33ada
Showing 1 changed file with 4 additions and 1 deletion.
5 changes: 4 additions & 1 deletion drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c
Expand Up @@ -157,7 +157,7 @@ static int mlxbf_gige_open(struct net_device *netdev)

err = mlxbf_gige_tx_init(priv);
if (err)
goto free_irqs;
goto phy_deinit;
err = mlxbf_gige_rx_init(priv);
if (err)
goto tx_deinit;
Expand Down Expand Up @@ -185,6 +185,9 @@ static int mlxbf_gige_open(struct net_device *netdev)
tx_deinit:
mlxbf_gige_tx_deinit(priv);

phy_deinit:
phy_stop(phydev);

free_irqs:
mlxbf_gige_free_irqs(priv);
return err;
Expand Down

0 comments on commit 0c33ada

Please sign in to comment.