mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-24 17:23:25 -05:00
ASoC: qcom: sm8250: fix HDMI audio playback
Current code does not setup CPU dai (causing -EIO errors on playback)
and does not pass SND_SOC_DAIFMT_I2S to codec fmt (causing i2s-hifi
errors). Fix both errors to enable HDMI audio playback on SM8250. Tested
on RB5 platform.
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Fixes: aa2e278554
("ASoC: qcom: sm8250: add sound card qrb5165-rb5 support")
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Reviewed-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Link: https://lore.kernel.org/r/20201119123145.709891-1-dmitry.baryshkov@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
82d1aeb8a4
commit
ddf1c4b394
1 changed files with 3 additions and 1 deletions
|
@ -36,6 +36,7 @@ static int sm8250_be_hw_params_fixup(struct snd_soc_pcm_runtime *rtd,
|
|||
|
||||
static int sm8250_snd_startup(struct snd_pcm_substream *substream)
|
||||
{
|
||||
unsigned int fmt = SND_SOC_DAIFMT_CBS_CFS;
|
||||
unsigned int codec_dai_fmt = SND_SOC_DAIFMT_CBS_CFS;
|
||||
struct snd_soc_pcm_runtime *rtd = substream->private_data;
|
||||
struct snd_soc_dai *cpu_dai = asoc_rtd_to_cpu(rtd, 0);
|
||||
|
@ -43,10 +44,11 @@ static int sm8250_snd_startup(struct snd_pcm_substream *substream)
|
|||
|
||||
switch (cpu_dai->id) {
|
||||
case TERTIARY_MI2S_RX:
|
||||
codec_dai_fmt |= SND_SOC_DAIFMT_NB_NF;
|
||||
codec_dai_fmt |= SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_I2S;
|
||||
snd_soc_dai_set_sysclk(cpu_dai,
|
||||
Q6AFE_LPASS_CLK_ID_TER_MI2S_IBIT,
|
||||
MI2S_BCLK_RATE, SNDRV_PCM_STREAM_PLAYBACK);
|
||||
snd_soc_dai_set_fmt(cpu_dai, fmt);
|
||||
snd_soc_dai_set_fmt(codec_dai, codec_dai_fmt);
|
||||
break;
|
||||
default:
|
||||
|
|
Loading…
Add table
Reference in a new issue