]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ASoC: qcom: sdm845: add handling of secondary MI2S clock
authorAlexey Klimov <alexey.klimov@linaro.org>
Thu, 5 Dec 2024 02:33:43 +0000 (02:33 +0000)
committerMark Brown <broonie@kernel.org>
Mon, 16 Dec 2024 22:04:44 +0000 (22:04 +0000)
Add handling of clock related to secondary MI2S_RX in startup, shutdown
and hw params routines. The handing of MI2S_TX and SEC_MI2S clock is
already there so this requires only placing SECONDARY_MI2S_RX in the
correct switch-case choices.

Signed-off-by: Alexey Klimov <alexey.klimov@linaro.org>
Link: https://patch.msgid.link/20241205023344.2232529-3-alexey.klimov@linaro.org
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/qcom/sdm845.c

index a479d7e5b7fbdca0719f12a899e8b9f7b851f488..fcc7df75346fc1ed022060c4345f8f8bf4b455a7 100644 (file)
@@ -215,6 +215,7 @@ static int sdm845_snd_hw_params(struct snd_pcm_substream *substream,
                ret = sdm845_slim_snd_hw_params(substream, params);
                break;
        case QUATERNARY_MI2S_RX:
+       case SECONDARY_MI2S_RX:
                break;
        default:
                pr_err("%s: invalid dai id 0x%x\n", __func__, cpu_dai->id);
@@ -356,6 +357,7 @@ static int sdm845_snd_startup(struct snd_pcm_substream *substream)
                snd_soc_dai_set_fmt(codec_dai, codec_dai_fmt);
                break;
 
+       case SECONDARY_MI2S_RX:
        case SECONDARY_MI2S_TX:
                codec_dai_fmt |= SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_I2S;
                if (++(data->sec_mi2s_clk_count) == 1) {
@@ -371,8 +373,6 @@ static int sdm845_snd_startup(struct snd_pcm_substream *substream)
                        Q6AFE_LPASS_CLK_ID_QUAD_MI2S_IBIT,
                        MI2S_BCLK_RATE, SNDRV_PCM_STREAM_PLAYBACK);
                snd_soc_dai_set_fmt(cpu_dai, fmt);
-
-
                break;
 
        case QUATERNARY_TDM_RX_0:
@@ -441,6 +441,7 @@ static void  sdm845_snd_shutdown(struct snd_pcm_substream *substream)
                }
                break;
 
+       case SECONDARY_MI2S_RX:
        case SECONDARY_MI2S_TX:
                if (--(data->sec_mi2s_clk_count) == 0) {
                        snd_soc_dai_set_sysclk(cpu_dai,