From bbac7e3cb7689aa6ce188dbf298fab8a6ecda164 Mon Sep 17 00:00:00 2001 From: Shengjiu Wang <shengjiu.wang@nxp.com> Date: Fri, 16 Jul 2021 13:44:17 +0800 Subject: [PATCH] LF-4175-6: ASoC: imx-rpmsg: add dummy headphone Jack for pulseaudio with rpmsg devices, there is not headphone plug event on A core side, but pulseaudio would mute the headphone if there is not headphone Jack event, so add dummy headphone Jack, which emulates the headphone is plugged in always. Signed-off-by: Shengjiu Wang <shengjiu.wang@nxp.com> Reviewed-by: Peng Zhang <peng.zhang_8@nxp.com> --- sound/soc/fsl/imx-rpmsg.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/sound/soc/fsl/imx-rpmsg.c b/sound/soc/fsl/imx-rpmsg.c index 7429c440aba6de..a49fb1c0be11e1 100644 --- a/sound/soc/fsl/imx-rpmsg.c +++ b/sound/soc/fsl/imx-rpmsg.c @@ -14,11 +14,13 @@ #include <sound/control.h> #include <sound/pcm_params.h> #include <sound/soc-dapm.h> +#include <sound/simple_card_utils.h> #include "imx-pcm-rpmsg.h" struct imx_rpmsg { struct snd_soc_dai_link dai; struct snd_soc_card card; + struct asoc_simple_jack hp_jack; }; static const struct snd_soc_dapm_widget imx_rpmsg_dapm_widgets[] = { @@ -137,6 +139,11 @@ static int imx_rpmsg_probe(struct platform_device *pdev) goto fail; } + data->hp_jack.pin.pin = "Headphone Jack"; + data->hp_jack.pin.mask = SND_JACK_HEADPHONE; + snd_soc_card_jack_new(&data->card, "Headphone Jack", SND_JACK_HEADPHONE, + &data->hp_jack.jack, &data->hp_jack.pin, 1); + snd_soc_jack_report(&data->hp_jack.jack, SND_JACK_HEADPHONE, SND_JACK_HEADPHONE); fail: pdev->dev.of_node = NULL; return ret; -- GitLab