Commit 86b57031 authored by Jeeja KP's avatar Jeeja KP Committed by Mark Brown

ASoC: Intel: Skylake: Add jack port initialize in nau88l25_ssm4567 machine

After the pcm jack is created, create and initialize the pin switch
widget for each port. Pin switch is to enable/disable the pin when
monitor is connected/disconnected.
Signed-off-by: default avatarJeeja KP <jeeja.kp@intel.com>
Acked-by: default avatarVinod Koul <vinod.koul@intel.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent 565f13a9
...@@ -136,9 +136,6 @@ static const struct snd_soc_dapm_route skylake_map[] = { ...@@ -136,9 +136,6 @@ static const struct snd_soc_dapm_route skylake_map[] = {
{"MIC", NULL, "Headset Mic"}, {"MIC", NULL, "Headset Mic"},
{"DMic", NULL, "SoC DMIC"}, {"DMic", NULL, "SoC DMIC"},
{"DP1", NULL, "hif5-0 Output"},
{"DP2", NULL, "hif6-0 Output"},
/* CODEC BE connections */ /* CODEC BE connections */
{ "Left Playback", NULL, "ssp0 Tx"}, { "Left Playback", NULL, "ssp0 Tx"},
{ "Right Playback", NULL, "ssp0 Tx"}, { "Right Playback", NULL, "ssp0 Tx"},
...@@ -660,10 +657,12 @@ static int skylake_card_late_probe(struct snd_soc_card *card) ...@@ -660,10 +657,12 @@ static int skylake_card_late_probe(struct snd_soc_card *card)
{ {
struct skl_nau88125_private *ctx = snd_soc_card_get_drvdata(card); struct skl_nau88125_private *ctx = snd_soc_card_get_drvdata(card);
struct skl_hdmi_pcm *pcm; struct skl_hdmi_pcm *pcm;
struct snd_soc_codec *codec = NULL;
int err, i = 0; int err, i = 0;
char jack_name[NAME_SIZE]; char jack_name[NAME_SIZE];
list_for_each_entry(pcm, &ctx->hdmi_pcm_list, head) { list_for_each_entry(pcm, &ctx->hdmi_pcm_list, head) {
codec = pcm->codec_dai->codec;
snprintf(jack_name, sizeof(jack_name), snprintf(jack_name, sizeof(jack_name),
"HDMI/DP, pcm=%d Jack", pcm->device); "HDMI/DP, pcm=%d Jack", pcm->device);
err = snd_soc_card_jack_new(card, jack_name, err = snd_soc_card_jack_new(card, jack_name,
...@@ -682,7 +681,10 @@ static int skylake_card_late_probe(struct snd_soc_card *card) ...@@ -682,7 +681,10 @@ static int skylake_card_late_probe(struct snd_soc_card *card)
i++; i++;
} }
return 0; if (!codec)
return -EINVAL;
return hdac_hdmi_jack_port_init(codec, &card->dapm);
} }
/* skylake audio machine driver for SPT + NAU88L25 */ /* skylake audio machine driver for SPT + NAU88L25 */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment