mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-15 08:14:15 +08:00
ASoC: stm: Update to use set_fmt_new callback
As part of updating the core to directly tell drivers if they are clock provider or consumer update these CPU side drivers to use the new direct callback. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Link: https://lore.kernel.org/r/20220519154318.2153729-22-ckeepax@opensource.cirrus.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
2d4dd776e9
commit
0092dac91e
@ -593,16 +593,16 @@ static int stm32_i2s_set_dai_fmt(struct snd_soc_dai *cpu_dai, unsigned int fmt)
|
||||
}
|
||||
|
||||
/* DAI clock master masks */
|
||||
switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
|
||||
case SND_SOC_DAIFMT_CBM_CFM:
|
||||
switch (fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK) {
|
||||
case SND_SOC_DAIFMT_BC_FC:
|
||||
i2s->ms_flg = I2S_MS_SLAVE;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_CBS_CFS:
|
||||
case SND_SOC_DAIFMT_BP_FP:
|
||||
i2s->ms_flg = I2S_MS_MASTER;
|
||||
break;
|
||||
default:
|
||||
dev_err(cpu_dai->dev, "Unsupported mode %#x\n",
|
||||
fmt & SND_SOC_DAIFMT_MASTER_MASK);
|
||||
fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@ -954,7 +954,7 @@ static const struct regmap_config stm32_h7_i2s_regmap_conf = {
|
||||
|
||||
static const struct snd_soc_dai_ops stm32_i2s_pcm_dai_ops = {
|
||||
.set_sysclk = stm32_i2s_set_sysclk,
|
||||
.set_fmt = stm32_i2s_set_dai_fmt,
|
||||
.set_fmt_new = stm32_i2s_set_dai_fmt,
|
||||
.startup = stm32_i2s_startup,
|
||||
.hw_params = stm32_i2s_hw_params,
|
||||
.trigger = stm32_i2s_trigger,
|
||||
|
@ -719,18 +719,18 @@ static int stm32_sai_set_dai_fmt(struct snd_soc_dai *cpu_dai, unsigned int fmt)
|
||||
stm32_sai_sub_reg_up(sai, STM_SAI_FRCR_REGX, frcr_mask, frcr);
|
||||
|
||||
/* DAI clock master masks */
|
||||
switch (fmt & SND_SOC_DAIFMT_MASTER_MASK) {
|
||||
case SND_SOC_DAIFMT_CBM_CFM:
|
||||
switch (fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK) {
|
||||
case SND_SOC_DAIFMT_BC_FC:
|
||||
/* codec is master */
|
||||
cr1 |= SAI_XCR1_SLAVE;
|
||||
sai->master = false;
|
||||
break;
|
||||
case SND_SOC_DAIFMT_CBS_CFS:
|
||||
case SND_SOC_DAIFMT_BP_FP:
|
||||
sai->master = true;
|
||||
break;
|
||||
default:
|
||||
dev_err(cpu_dai->dev, "Unsupported mode %#x\n",
|
||||
fmt & SND_SOC_DAIFMT_MASTER_MASK);
|
||||
fmt & SND_SOC_DAIFMT_CLOCK_PROVIDER_MASK);
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
@ -1225,7 +1225,7 @@ static int stm32_sai_dai_probe(struct snd_soc_dai *cpu_dai)
|
||||
|
||||
static const struct snd_soc_dai_ops stm32_sai_pcm_dai_ops = {
|
||||
.set_sysclk = stm32_sai_set_sysclk,
|
||||
.set_fmt = stm32_sai_set_dai_fmt,
|
||||
.set_fmt_new = stm32_sai_set_dai_fmt,
|
||||
.set_tdm_slot = stm32_sai_set_dai_tdm_slot,
|
||||
.startup = stm32_sai_startup,
|
||||
.hw_params = stm32_sai_hw_params,
|
||||
|
Loading…
Reference in New Issue
Block a user