Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit db966f8a authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: wm8994: Enabling VMID should take a runtime PM reference



We can enable VMID independently of the bias in some use cases so we need
to ensure that the core device is powered up.

Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
Cc: stable@vger.kernel.org
parent 43b6cec2
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -770,6 +770,8 @@ static void vmid_reference(struct snd_soc_codec *codec)
{
	struct wm8994_priv *wm8994 = snd_soc_codec_get_drvdata(codec);

	pm_runtime_get_sync(codec->dev);

	wm8994->vmid_refcount++;

	dev_dbg(codec->dev, "Referencing VMID, refcount is now %d\n",
@@ -837,6 +839,8 @@ static void vmid_dereference(struct snd_soc_codec *codec)
				    WM8994_VMID_BUF_ENA |
				    WM8994_VMID_RAMP_MASK, 0);
	}

	pm_runtime_put(codec->dev);
}

static int vmid_event(struct snd_soc_dapm_widget *w,