summary refs log tree commit diff
path: root/drivers/mfd/arizona-core.c
diff options
context:
space:
mode:
authorLiang He <windhl@126.com>2023-01-05 14:10:55 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-03-11 13:55:32 +0100
commit9893771097b22a8743a446e45994a177795ca4da (patch)
tree3361f564344e8b9498d47bb7316a9bf4b21d479d /drivers/mfd/arizona-core.c
parent8caa60c20ae19797a663792ec2a439e07b4c4345 (diff)
downloadlinux-9893771097b22a8743a446e45994a177795ca4da.tar.gz
mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak
[ Upstream commit 4414a7ab80cebf715045e3c4d465feefbad21139 ]

In arizona_clk32k_enable(), we should use pm_runtime_resume_and_get()
as pm_runtime_get_sync() will increase the refcnt even when it
returns an error.

Signed-off-by: Liang He <windhl@126.com>
Acked-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Signed-off-by: Lee Jones <lee@kernel.org>
Link: https://lore.kernel.org/r/20230105061055.1509261-1-windhl@126.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/mfd/arizona-core.c')
-rw-r--r--drivers/mfd/arizona-core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
index cbf1dd90b70d..b1c53e040771 100644
--- a/drivers/mfd/arizona-core.c
+++ b/drivers/mfd/arizona-core.c
@@ -45,7 +45,7 @@ int arizona_clk32k_enable(struct arizona *arizona)
 	if (arizona->clk32k_ref == 1) {
 		switch (arizona->pdata.clk32k_src) {
 		case ARIZONA_32KZ_MCLK1:
-			ret = pm_runtime_get_sync(arizona->dev);
+			ret = pm_runtime_resume_and_get(arizona->dev);
 			if (ret != 0)
 				goto err_ref;
 			ret = clk_prepare_enable(arizona->mclk[ARIZONA_MCLK1]);