summaryrefslogtreecommitdiff
path: root/sound/soc
diff options
context:
space:
mode:
authorOder Chiou <oder_chiou@realtek.com>2022-07-05 13:11:34 +0300
committerMark Brown <broonie@kernel.org>2022-07-05 15:00:48 +0300
commit8dbefb20b2d0fa8dbf81db161db443096120b326 (patch)
tree1c412e90f0c152ee4b059fe0e3acc03d8d431b03 /sound/soc
parentacf981f94edca13c85fa24dd8511cdc6bd4c98ed (diff)
downloadlinux-8dbefb20b2d0fa8dbf81db161db443096120b326.tar.xz
ASoC: rt5640: Add the MICBIAS1 to the dapm routing
The patch adds the MICBIAS1 to the dapm routing while the HDA header used. Signed-off-by: Oder Chiou <oder_chiou@realtek.com> Reported-by: Sameer Pujar <spujar@nvidia.com> Link: https://lore.kernel.org/r/20220705101134.16792-2-oder_chiou@realtek.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/rt5640.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/codecs/rt5640.c b/sound/soc/codecs/rt5640.c
index 56008e4518f3..5092856a262d 100644
--- a/sound/soc/codecs/rt5640.c
+++ b/sound/soc/codecs/rt5640.c
@@ -2556,10 +2556,18 @@ static void rt5640_enable_jack_detect(struct snd_soc_component *component,
queue_delayed_work(system_long_wq, &rt5640->jack_work, 0);
}
+static const struct snd_soc_dapm_route rt5640_hda_jack_dapm_routes[] = {
+ {"IN1P", NULL, "MICBIAS1"},
+ {"IN2P", NULL, "MICBIAS1"},
+ {"IN3P", NULL, "MICBIAS1"},
+};
+
static void rt5640_enable_hda_jack_detect(
struct snd_soc_component *component, struct snd_soc_jack *jack)
{
struct rt5640_priv *rt5640 = snd_soc_component_get_drvdata(component);
+ struct snd_soc_dapm_context *dapm =
+ snd_soc_component_get_dapm(component);
int ret;
/* Select JD1 for Mic */
@@ -2592,6 +2600,9 @@ static void rt5640_enable_hda_jack_detect(
/* sync initial jack state */
queue_delayed_work(system_long_wq, &rt5640->jack_work, 0);
+
+ snd_soc_dapm_add_routes(dapm, rt5640_hda_jack_dapm_routes,
+ ARRAY_SIZE(rt5640_hda_jack_dapm_routes));
}
static int rt5640_set_jack(struct snd_soc_component *component,