diff options
Diffstat (limited to 'target/linux/at91/patches-5.10/118-net-macb-unprepare-clocks-in-case-of-failure.patch')
-rw-r--r-- | target/linux/at91/patches-5.10/118-net-macb-unprepare-clocks-in-case-of-failure.patch | 60 |
1 files changed, 0 insertions, 60 deletions
diff --git a/target/linux/at91/patches-5.10/118-net-macb-unprepare-clocks-in-case-of-failure.patch b/target/linux/at91/patches-5.10/118-net-macb-unprepare-clocks-in-case-of-failure.patch deleted file mode 100644 index c66d334f3a..0000000000 --- a/target/linux/at91/patches-5.10/118-net-macb-unprepare-clocks-in-case-of-failure.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 9692c07ee8bf8f68b74d553d861d092e33264781 Mon Sep 17 00:00:00 2001 -From: Claudiu Beznea <claudiu.beznea@microchip.com> -Date: Wed, 9 Dec 2020 15:03:35 +0200 -Subject: [PATCH 118/247] net: macb: unprepare clocks in case of failure - -Unprepare clocks in case of any failure in fu540_c000_clk_init(). - -Fixes: c218ad559020 ("macb: Add support for SiFive FU540-C000") -Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com> -Signed-off-by: David S. Miller <davem@davemloft.net> ---- - drivers/net/ethernet/cadence/macb_main.c | 24 ++++++++++++++++++------ - 1 file changed, 18 insertions(+), 6 deletions(-) - ---- a/drivers/net/ethernet/cadence/macb_main.c -+++ b/drivers/net/ethernet/cadence/macb_main.c -@@ -4335,8 +4335,10 @@ static int fu540_c000_clk_init(struct pl - return err; - - mgmt = devm_kzalloc(&pdev->dev, sizeof(*mgmt), GFP_KERNEL); -- if (!mgmt) -- return -ENOMEM; -+ if (!mgmt) { -+ err = -ENOMEM; -+ goto err_disable_clks; -+ } - - init.name = "sifive-gemgxl-mgmt"; - init.ops = &fu540_c000_ops; -@@ -4347,16 +4349,26 @@ static int fu540_c000_clk_init(struct pl - mgmt->hw.init = &init; - - *tx_clk = devm_clk_register(&pdev->dev, &mgmt->hw); -- if (IS_ERR(*tx_clk)) -- return PTR_ERR(*tx_clk); -+ if (IS_ERR(*tx_clk)) { -+ err = PTR_ERR(*tx_clk); -+ goto err_disable_clks; -+ } - - err = clk_prepare_enable(*tx_clk); -- if (err) -+ if (err) { - dev_err(&pdev->dev, "failed to enable tx_clk (%u)\n", err); -- else -+ *tx_clk = NULL; -+ goto err_disable_clks; -+ } else { - dev_info(&pdev->dev, "Registered clk switch '%s'\n", init.name); -+ } - - return 0; -+ -+err_disable_clks: -+ macb_clks_disable(*pclk, *hclk, *tx_clk, *rx_clk, *tsu_clk); -+ -+ return err; - } - - static int fu540_c000_init(struct platform_device *pdev) |