Unverified Commit 0e209294 authored by Maso Huang's avatar Maso Huang Committed by Mark Brown
Browse files

ASoC: mediatek: mt7986: add sample rate checker

parent 0f10adb0
Loading
Loading
Loading
Loading
+19 −4
Original line number Diff line number Diff line
@@ -237,12 +237,27 @@ static int mtk_dai_etdm_hw_params(struct snd_pcm_substream *substream,
				  struct snd_pcm_hw_params *params,
				  struct snd_soc_dai *dai)
{
	unsigned int rate = params_rate(params);
	struct mtk_base_afe *afe = snd_soc_dai_get_drvdata(dai);

	switch (rate) {
	case 8000:
	case 12000:
	case 16000:
	case 24000:
	case 32000:
	case 48000:
	case 96000:
	case 192000:
		mtk_dai_etdm_config(afe, params, dai, SNDRV_PCM_STREAM_PLAYBACK);
		mtk_dai_etdm_config(afe, params, dai, SNDRV_PCM_STREAM_CAPTURE);

		return 0;
	default:
		dev_err(afe->dev,
			"Sample rate %d invalid. Supported rates: 8/12/16/24/32/48/96/192 kHz\n",
			rate);
		return -EINVAL;
	}
}

static int mtk_dai_etdm_trigger(struct snd_pcm_substream *substream, int cmd,