From: Mahesh Mahadevan Date: Fri, 21 Oct 2011 11:17:52 +0000 (-0500) Subject: ENGR00160605 Update ALSA Headset detect code X-Git-Tag: v3.0.35-fsl~2039 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=28c4fdf36844526590e58f584089530c0489bdbb;p=karo-tx-linux.git ENGR00160605 Update ALSA Headset detect code Update Headset detect code incase no dedicated pin and detect is always activated Signed-off-by: Mahesh Mahadevan --- diff --git a/sound/soc/imx/imx-sgtl5000.c b/sound/soc/imx/imx-sgtl5000.c index 82ee8eca8680..3fd0aa211aef 100644 --- a/sound/soc/imx/imx-sgtl5000.c +++ b/sound/soc/imx/imx-sgtl5000.c @@ -249,24 +249,26 @@ static int imx_3stack_sgtl5000_init(struct snd_soc_pcm_runtime *rtd) snd_soc_dapm_enable_pin(&codec->dapm, "Headphone Jack"); snd_soc_dapm_sync(&codec->dapm); - /* Jack detection API stuff */ - ret = snd_soc_jack_new(codec, "Headphone Jack", - SND_JACK_HEADPHONE, &hs_jack); - if (ret) - return ret; - - ret = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins), - hs_jack_pins); - if (ret) { - printk(KERN_ERR "failed to call snd_soc_jack_add_pins\n"); - return ret; + if (hs_jack_gpios[0].gpio != -1) { + /* Jack detection API stuff */ + ret = snd_soc_jack_new(codec, "Headphone Jack", + SND_JACK_HEADPHONE, &hs_jack); + if (ret) + return ret; + + ret = snd_soc_jack_add_pins(&hs_jack, ARRAY_SIZE(hs_jack_pins), + hs_jack_pins); + if (ret) { + printk(KERN_ERR "failed to call snd_soc_jack_add_pins\n"); + return ret; + } + + ret = snd_soc_jack_add_gpios(&hs_jack, + ARRAY_SIZE(hs_jack_gpios), hs_jack_gpios); + if (ret) + printk(KERN_WARNING "failed to call snd_soc_jack_add_gpios\n"); } - ret = snd_soc_jack_add_gpios(&hs_jack, ARRAY_SIZE(hs_jack_gpios), - hs_jack_gpios); - if (ret) - printk(KERN_WARNING "failed to call snd_soc_jack_add_gpios\n"); - return 0; }