ASoC: SOF: mediatek: Add dai driver for mt8186
authorChunxu Li <chunxu.li@mediatek.com>
Thu, 25 Aug 2022 06:54:09 +0000 (14:54 +0800)
committerMark Brown <broonie@kernel.org>
Thu, 25 Aug 2022 11:29:28 +0000 (12:29 +0100)
Add dsp ops callback to register AFE DL1/DL2/UL1/UL2 SOF dai's with ALSA

Signed-off-by: Chunxu Li <chunxu.li@mediatek.com>
Link: https://lore.kernel.org/r/20220825065411.31279-2-chunxu.li@mediatek.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/mediatek/mt8186/mt8186.c

index 014afe3..b47bb7a 100644 (file)
@@ -468,6 +468,37 @@ static int mt8186_ipc_msg_data(struct snd_sof_dev *sdev,
        return 0;
 }
 
+static struct snd_soc_dai_driver mt8186_dai[] = {
+{
+       .name = "SOF_DL1",
+       .playback = {
+               .channels_min = 1,
+               .channels_max = 2,
+       },
+},
+{
+       .name = "SOF_DL2",
+       .playback = {
+               .channels_min = 1,
+               .channels_max = 2,
+       },
+},
+{
+       .name = "SOF_UL1",
+       .capture = {
+               .channels_min = 1,
+               .channels_max = 2,
+       },
+},
+{
+       .name = "SOF_UL2",
+       .capture = {
+               .channels_min = 1,
+               .channels_max = 2,
+       },
+},
+};
+
 /* mt8186 ops */
 static struct snd_sof_dsp_ops sof_mt8186_ops = {
        /* probe and remove */
@@ -503,6 +534,10 @@ static struct snd_sof_dsp_ops sof_mt8186_ops = {
        /* Firmware ops */
        .dsp_arch_ops = &sof_xtensa_arch_ops,
 
+       /* DAI drivers */
+       .drv            = mt8186_dai,
+       .num_drv        = ARRAY_SIZE(mt8186_dai),
+
        /* PM */
        .suspend        = mt8186_dsp_suspend,
        .resume         = mt8186_dsp_resume,