1 From f922ea0f423a102d4bd691cb5d7975a93664f485 Mon Sep 17 00:00:00 2001
2 From: Sasha Levin <sashal@kernel.org>
3 Date: Wed, 20 Mar 2024 15:31:17 -0400
4 Subject: mlxbf_gige: stop PHY during open() error paths
6 From: David Thompson <davthompson@nvidia.com>
8 [ Upstream commit d6c30c5a168f8586b8bcc0d8e42e2456eb05209b ]
10 The mlxbf_gige_open() routine starts the PHY as part of normal
11 initialization. The mlxbf_gige_open() routine must stop the
12 PHY during its error paths.
14 Fixes: f92e1869d74e ("Add Mellanox BlueField Gigabit Ethernet driver")
15 Signed-off-by: David Thompson <davthompson@nvidia.com>
16 Reviewed-by: Asmaa Mnebhi <asmaa@nvidia.com>
17 Reviewed-by: Andrew Lunn <andrew@lunn.ch>
18 Reviewed-by: Jiri Pirko <jiri@nvidia.com>
19 Signed-off-by: David S. Miller <davem@davemloft.net>
20 Signed-off-by: Sasha Levin <sashal@kernel.org>
22 drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c | 5 ++++-
23 1 file changed, 4 insertions(+), 1 deletion(-)
25 diff --git a/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c b/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c
26 index aaf1faed4133e..044ff5f87b5e8 100644
27 --- a/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c
28 +++ b/drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c
29 @@ -157,7 +157,7 @@ static int mlxbf_gige_open(struct net_device *netdev)
31 err = mlxbf_gige_tx_init(priv);
35 err = mlxbf_gige_rx_init(priv);
38 @@ -185,6 +185,9 @@ static int mlxbf_gige_open(struct net_device *netdev)
40 mlxbf_gige_tx_deinit(priv);
46 mlxbf_gige_free_irqs(priv);