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

N, Harshapriya harshapriya.n at intel.com
Thu Jul 30 21:43:30 CEST 2020


> 
> >>>    	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);
> 
> Also is the clock only needed for the rt5663 and rt5514, the amplifier does not
> need it?
That’s right. max98927 does not need mclk.
> 
> >>
> >>> +		if (__clk_is_enabled(sclk))
> >>
> >> [2] Again is this test needed since sclk is not shared between SSPs
> > Same thought process to check if its enabled or not. Will remove that.
> >>
> >>> +			clk_disable_unprepare(sclk);
> >


More information about the Alsa-devel mailing list