diff mbox series

[net] net: stmmac: disable clocks in stmmac_remove_config_dt()

Message ID 20210616091024.13412-1-qiangqing.zhang@nxp.com (mailing list archive)
State New, archived
Headers show
Series [net] net: stmmac: disable clocks in stmmac_remove_config_dt() | expand

Commit Message

Joakim Zhang June 16, 2021, 9:10 a.m. UTC
Platform drivers may call stmmac_probe_config_dt() to parse dt, could
call stmmac_remove_config_dt() in error handing after dt parsed, so need
disable clocks in stmmac_remove_config_dt().

Go through all platforms drivers which use stmmac_probe_config_dt(),
none of them disable clocks manually, so it's safe to disable them in
stmmac_remove_config_dt().

Fixes: commit d2ed0a7755fe ("net: ethernet: stmmac: fix of-node and fixed-link-phydev leaks")
Signed-off-by: Joakim Zhang <qiangqing.zhang@nxp.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

patchwork-bot+netdevbpf@kernel.org June 16, 2021, 7:30 p.m. UTC | #1
Hello:

This patch was applied to netdev/net.git (refs/heads/master):

On Wed, 16 Jun 2021 17:10:24 +0800 you wrote:
> Platform drivers may call stmmac_probe_config_dt() to parse dt, could
> call stmmac_remove_config_dt() in error handing after dt parsed, so need
> disable clocks in stmmac_remove_config_dt().
> 
> Go through all platforms drivers which use stmmac_probe_config_dt(),
> none of them disable clocks manually, so it's safe to disable them in
> stmmac_remove_config_dt().
> 
> [...]

Here is the summary with links:
  - [net] net: stmmac: disable clocks in stmmac_remove_config_dt()
    https://git.kernel.org/netdev/net/c/8f269102baf7

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
diff mbox series

Patch

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index 1e17a23d9118..a696ada013eb 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -622,6 +622,8 @@  stmmac_probe_config_dt(struct platform_device *pdev, u8 *mac)
 void stmmac_remove_config_dt(struct platform_device *pdev,
 			     struct plat_stmmacenet_data *plat)
 {
+	clk_disable_unprepare(plat->stmmac_clk);
+	clk_disable_unprepare(plat->pclk);
 	of_node_put(plat->phy_node);
 	of_node_put(plat->mdio_node);
 }