Re: [PATCH v2] ASoC: Intel: boards: eve: Fix DMIC records zero

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





    	case SND_SOC_DAPM_POST_PMD:
-		clk_disable_unprepare(priv->mclk);
-		clk_disable_unprepare(priv->sclk);
+		if (__clk_is_enabled(priv->mclk))
+			clk_disable_unprepare(priv->mclk);
+

[1] this seems wrong in case you have two SSPs working, and stop one.
This would turn off the mclk while one of the two SSPs is still working.
For this platform we use either headset or dmic.
There is no way we can record simultaneously using different devices.
So disabling mclk might not be harmful here. But this case will always be true
too :).

Maybe CRAS prevents you from recording on two inputs, but it looks like you
have independent front-ends so in theory couldn't you record at the alsa hw:
device level? Is this really mutually exclusive at the hardware level?
True. Its not mutually exclusive at hardware level. the following might be safe
if (!__clk_is_enabled(priv->sclk0)) &&  (!__clk_is_enabled(priv->sclk1))
	clk_disable_unprepare(priv->mclk);

I don't understand DAPM well-enough to know if these independent platform clock control routines are serialized by design or if this could be racy?




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux