* [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable
@ 2015-09-30 4:54 Jiada Wang
2015-09-30 7:48 ` Charles Keepax
2015-09-30 18:11 ` Mark Brown
0 siblings, 2 replies; 3+ messages in thread
From: Jiada Wang @ 2015-09-30 4:54 UTC (permalink / raw)
To: lgirdwood, broonie, perex, tiwai, patches, alsa-devel, linux-kernel
pm_runtime_enable is called in probe to enable runtime PM
for wm8962 codec, but pm_runtime_disable isn't called in remove
callback, nor is called in error path if probe fails after runtime
PM is enabled, this causes unbalanced pm_runtime_enable.
This patch Adds pm_runtime_disable in remove callback and error path,
to balance pm_runtime_enable.
Signed-off-by: Jiada Wang <jiada_wang@mentor.com>
---
sound/soc/codecs/wm8962.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c
index 293e47a..2fbc6ef 100644
--- a/sound/soc/codecs/wm8962.c
+++ b/sound/soc/codecs/wm8962.c
@@ -3760,7 +3760,7 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
ret = snd_soc_register_codec(&i2c->dev,
&soc_codec_dev_wm8962, &wm8962_dai, 1);
if (ret < 0)
- goto err_enable;
+ goto err_pm_runtime;
regcache_cache_only(wm8962->regmap, true);
@@ -3769,6 +3769,8 @@ static int wm8962_i2c_probe(struct i2c_client *i2c,
return 0;
+err_pm_runtime:
+ pm_runtime_disable(&i2c->dev);
err_enable:
regulator_bulk_disable(ARRAY_SIZE(wm8962->supplies), wm8962->supplies);
err:
@@ -3778,6 +3780,7 @@ err:
static int wm8962_i2c_remove(struct i2c_client *client)
{
snd_soc_unregister_codec(&client->dev);
+ pm_runtime_disable(&client->dev);
return 0;
}
--
2.4.5
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable
2015-09-30 4:54 [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable Jiada Wang
@ 2015-09-30 7:48 ` Charles Keepax
2015-09-30 18:11 ` Mark Brown
1 sibling, 0 replies; 3+ messages in thread
From: Charles Keepax @ 2015-09-30 7:48 UTC (permalink / raw)
To: Jiada Wang
Cc: lgirdwood, broonie, perex, tiwai, patches, alsa-devel, linux-kernel
On Wed, Sep 30, 2015 at 01:54:13PM +0900, Jiada Wang wrote:
> pm_runtime_enable is called in probe to enable runtime PM
> for wm8962 codec, but pm_runtime_disable isn't called in remove
> callback, nor is called in error path if probe fails after runtime
> PM is enabled, this causes unbalanced pm_runtime_enable.
>
> This patch Adds pm_runtime_disable in remove callback and error path,
> to balance pm_runtime_enable.
>
> Signed-off-by: Jiada Wang <jiada_wang@mentor.com>
> ---
Acked-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Thanks,
Charles
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable
2015-09-30 4:54 [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable Jiada Wang
2015-09-30 7:48 ` Charles Keepax
@ 2015-09-30 18:11 ` Mark Brown
1 sibling, 0 replies; 3+ messages in thread
From: Mark Brown @ 2015-09-30 18:11 UTC (permalink / raw)
To: Jiada Wang; +Cc: lgirdwood, perex, tiwai, patches, alsa-devel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 398 bytes --]
On Wed, Sep 30, 2015 at 01:54:13PM +0900, Jiada Wang wrote:
> pm_runtime_enable is called in probe to enable runtime PM
> for wm8962 codec, but pm_runtime_disable isn't called in remove
> callback, nor is called in error path if probe fails after runtime
> PM is enabled, this causes unbalanced pm_runtime_enable.
Applied, but please use subject lines matching the normal style for the
subsystem.
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 473 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2015-09-30 18:11 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-30 4:54 [PATCH] ASoC: Codec: wm8962: balance pm_runtime_enable Jiada Wang
2015-09-30 7:48 ` Charles Keepax
2015-09-30 18:11 ` Mark Brown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®