alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] ASoC: Intel: bxt: Add jack port initialize in bxt_rt298 machine
@ 2017-02-17  9:34 jeeja.kp
  0 siblings, 0 replies; 2+ messages in thread
From: jeeja.kp @ 2017-02-17  9:34 UTC (permalink / raw)
  To: alsa-devel; +Cc: tiwai, patches.audio, broonie, liam.r.girdwood, Jeeja KP

From: Jeeja KP <jeeja.kp@intel.com>

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: Jeeja KP <jeeja.kp@intel.com>
---
Change in v2:
	Add the SOB.

 sound/soc/intel/boards/bxt_rt298.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/sound/soc/intel/boards/bxt_rt298.c b/sound/soc/intel/boards/bxt_rt298.c
index d5f53a6..176c080 100644
--- a/sound/soc/intel/boards/bxt_rt298.c
+++ b/sound/soc/intel/boards/bxt_rt298.c
@@ -459,10 +459,12 @@ static int bxt_card_late_probe(struct snd_soc_card *card)
 {
 	struct bxt_rt286_private *ctx = snd_soc_card_get_drvdata(card);
 	struct bxt_hdmi_pcm *pcm;
+	struct snd_soc_codec *codec = NULL;
 	int err, i = 0;
 	char jack_name[NAME_SIZE];
 
 	list_for_each_entry(pcm, &ctx->hdmi_pcm_list, head) {
+		codec = pcm->codec_dai->codec;
 		snprintf(jack_name, sizeof(jack_name),
 			"HDMI/DP, pcm=%d Jack", pcm->device);
 		err = snd_soc_card_jack_new(card, jack_name,
@@ -480,7 +482,10 @@ static int bxt_card_late_probe(struct snd_soc_card *card)
 		i++;
 	}
 
-	return 0;
+	if (!codec)
+		return -EINVAL;
+
+	return hdac_hdmi_jack_port_init(codec, &card->dapm);
 }
 
 
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 2+ messages in thread
* [PATCH v2] ASoC: hdac_hdmi: Enable MST audio
@ 2017-02-17  9:20 jeeja.kp
  2017-02-17  9:20 ` [PATCH v2] ASoC: Intel: bxt: Add jack port initialize in bxt_rt298 machine jeeja.kp
  0 siblings, 1 reply; 2+ messages in thread
From: jeeja.kp @ 2017-02-17  9:20 UTC (permalink / raw)
  To: alsa-devel; +Cc: tiwai, patches.audio, broonie, liam.r.girdwood, Jeeja KP

From: Jeeja KP <jeeja.kp@intel.com>

With the patch series "ASoC: hdmi: Preparatory work to support MST audio",
the design is extended from pin to port mapping to handle MST usecases.

A pin is MST capable if pipe is valid value (i.e. not -1) in the notify
callback. If pipe = -1, default port is 0 else port = pipe. A MST capable
pin widget is programmed by first sending a verb to select the device/port
and then the actual verb is sent to program the widget.

This patch series enables MST Audio by configuring MST capable pins and
extended the jack handling to report event for ports. Now the jack events
are based on port connect/disconnect. The design is also extended to support
mapping of multiple port to a single converter.

Now with the introduction of multiple ports with a single pin, a pin widget
is created to enable/disable path based on device connection. Required
machine driver changes are done to handle this change.

Also use the ASoC jack instead of snd_jack framework to creates jacks in
the machine driver.

Note: This patch series has dependency on the series
"ASoC: hdmi: Preparatory work to support MST audio"  

Change v2:
	- Fixed the SOB missing in the patch.
	- Removed already applied patches.

Jeeja KP (1):
  ASoC: Intel: bxt: Add jack port initialize in bxt_rt298 machine

 sound/soc/intel/boards/bxt_rt298.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

-- 
2.5.0

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-02-17  9:23 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-17  9:34 [PATCH v2] ASoC: Intel: bxt: Add jack port initialize in bxt_rt298 machine jeeja.kp
  -- strict thread matches above, loose matches on Subject: below --
2017-02-17  9:20 [PATCH v2] ASoC: hdac_hdmi: Enable MST audio jeeja.kp
2017-02-17  9:20 ` [PATCH v2] ASoC: Intel: bxt: Add jack port initialize in bxt_rt298 machine jeeja.kp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).