]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
ASoC: mediatek: mt8195: Move rt5682 specific dapm routes
authorJulien Massot <julien.massot@collabora.com>
Thu, 17 Apr 2025 08:44:32 +0000 (10:44 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 17 Apr 2025 11:25:25 +0000 (12:25 +0100)
'HPOL', 'HPOR', and 'Headset Mic' are rt5682 specific,
move these routes to mt8195_rt5682_init so we keep
'mt8195_rt5682_routes' for connection between mt8195 and
mt6359.

Signed-off-by: Julien Massot <julien.massot@collabora.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Link: https://patch.msgid.link/20250417-mt8395-audio-sof-v1-1-30587426e5dd@collabora.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/mediatek/mt8195/mt8195-mt6359.c

index df29a9fa5aee5b6aedf34972cdf53402366d2ac2..f0bb59cf581b1e3bcfa66406d31de446a917c6c6 100644 (file)
@@ -92,10 +92,6 @@ static const struct snd_soc_dapm_widget mt8195_mt6359_widgets[] = {
 };
 
 static const struct snd_soc_dapm_route mt8195_mt6359_routes[] = {
-       /* headset */
-       { "Headphone", NULL, "HPOL" },
-       { "Headphone", NULL, "HPOR" },
-       { "IN1P", NULL, "Headset Mic" },
        /* SOF Uplink */
        {SOF_DMA_UL4, NULL, "O034"},
        {SOF_DMA_UL4, NULL, "O035"},
@@ -131,6 +127,13 @@ static const struct snd_kcontrol_new mt8195_speaker_controls[] = {
        SOC_DAPM_PIN_SWITCH("Ext Spk"),
 };
 
+static const struct snd_soc_dapm_route mt8195_rt5682_routes[] = {
+       /* headset */
+       { "Headphone", NULL, "HPOL" },
+       { "Headphone", NULL, "HPOR" },
+       { "IN1P", NULL, "Headset Mic" },
+};
+
 static const struct snd_soc_dapm_route mt8195_rt1011_routes[] = {
        { "Left Spk", NULL, "Left SPO" },
        { "Right Spk", NULL, "Right SPO" },
@@ -447,6 +450,7 @@ static int mt8195_rt5682_init(struct snd_soc_pcm_runtime *rtd)
                snd_soc_rtdcom_lookup(rtd, AFE_PCM_NAME);
        struct mtk_base_afe *afe = snd_soc_component_get_drvdata(cmpnt_afe);
        struct mt8195_afe_private *afe_priv = afe->platform_priv;
+       struct snd_soc_card *card = rtd->card;
        int ret;
 
        priv->i2so1_mclk = afe_priv->clk[MT8195_CLK_TOP_APLL12_DIV2];
@@ -473,7 +477,12 @@ static int mt8195_rt5682_init(struct snd_soc_pcm_runtime *rtd)
                return ret;
        }
 
-       return 0;
+       ret = snd_soc_dapm_add_routes(&card->dapm, mt8195_rt5682_routes,
+                                     ARRAY_SIZE(mt8195_rt5682_routes));
+       if (ret)
+               dev_err(rtd->dev, "unable to add dapm routes, ret %d\n", ret);
+
+       return ret;
 };
 
 static int mt8195_rt1011_etdm_hw_params(struct snd_pcm_substream *substream,