ASoC: ti: omap-mcbsp: Fix runtime PM underflow warnings
authorTony Lindgren <tony@atomide.com>
Mon, 30 Oct 2023 05:23:38 +0000 (07:23 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 28 Nov 2023 17:19:47 +0000 (17:19 +0000)
[ Upstream commit fbb74e56378d8306f214658e3d525a8b3f000c5a ]

We need to check for an active device as otherwise we get warnings
for some mcbsp instances for "Runtime PM usage count underflow!".

Reported-by: Andreas Kemnade <andreas@kemnade.info>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Link: https://lore.kernel.org/r/20231030052340.13415-1-tony@atomide.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
sound/soc/ti/omap-mcbsp.c

index fdabed5..b399d86 100644 (file)
@@ -74,14 +74,16 @@ static int omap2_mcbsp_set_clks_src(struct omap_mcbsp *mcbsp, u8 fck_src_id)
                return 0;
        }
 
-       pm_runtime_put_sync(mcbsp->dev);
+       if (mcbsp->active)
+               pm_runtime_put_sync(mcbsp->dev);
 
        r = clk_set_parent(mcbsp->fclk, fck_src);
        if (r)
                dev_err(mcbsp->dev, "CLKS: could not clk_set_parent() to %s\n",
                        src);
 
-       pm_runtime_get_sync(mcbsp->dev);
+       if (mcbsp->active)
+               pm_runtime_get_sync(mcbsp->dev);
 
        clk_put(fck_src);