ASoC: fsl-asoc-card: Don't bypass settings if cpu-dai is Master
When cpu-dai is the DAI Master (CBM_CFx), it may need some configurations, set_sysclk() call for eample, for cpu-dai side in the hw_params(), even if the set_bias_level() has already taken care of the codec-dai side. So this patch just simply adds an additional condition. Signed-off-by: Nicolin Chen <nicoleotsuka@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
f114040e3e
commit
41282920aa
|
@ -125,7 +125,12 @@ static int fsl_asoc_card_hw_params(struct snd_pcm_substream *substream,
|
|||
priv->sample_rate = params_rate(params);
|
||||
priv->sample_format = params_format(params);
|
||||
|
||||
if (priv->card.set_bias_level)
|
||||
/*
|
||||
* If codec-dai is DAI Master and all configurations are already in the
|
||||
* set_bias_level(), bypass the remaining settings in hw_params().
|
||||
* Note: (dai_fmt & CBM_CFM) includes CBM_CFM and CBM_CFS.
|
||||
*/
|
||||
if (priv->card.set_bias_level && priv->dai_fmt & SND_SOC_DAIFMT_CBM_CFM)
|
||||
return 0;
|
||||
|
||||
/* Specific configurations of DAIs starts from here */
|
||||
|
|
Loading…
Reference in a new issue