All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RESEND] ASoC: dont call dapm_sync while reporting jack always
@ 2013-10-21 13:37 Vinod Koul
  2013-10-22  8:32 ` Mark Brown
  0 siblings, 1 reply; 5+ messages in thread
From: Vinod Koul @ 2013-10-21 13:37 UTC (permalink / raw)
  To: alsa-devel; +Cc: Vinod Koul, broonie, lgirdwood

While reporting the jack status snd_soc_jack_report() invokes snd_soc_dapm_sync()
always. This should be required when we have pins associated with jack and
reporting enables or disables these.
So add a check for this case

Signed-off-by: Vinod Koul <vinod.koul@intel.com>
---
Sorry previous one had some non upstream cruft

 sound/soc/soc-jack.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/sound/soc/soc-jack.c b/sound/soc/soc-jack.c
index c9f7953..9fd4ed8 100644
--- a/sound/soc/soc-jack.c
+++ b/sound/soc/soc-jack.c
@@ -65,6 +65,7 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
 	struct snd_soc_codec *codec;
 	struct snd_soc_dapm_context *dapm;
 	struct snd_soc_jack_pin *pin;
+	unsigned int sync = 0;
 	int enable;
 
 	trace_snd_soc_jack_report(jack, mask, status);
@@ -92,12 +93,16 @@ void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask)
 			snd_soc_dapm_enable_pin(dapm, pin->pin);
 		else
 			snd_soc_dapm_disable_pin(dapm, pin->pin);
+
+		/* we need to sync for this case only */
+		sync = 1;
 	}
 
 	/* Report before the DAPM sync to help users updating micbias status */
 	blocking_notifier_call_chain(&jack->notifier, jack->status, jack);
 
-	snd_soc_dapm_sync(dapm);
+	if (sync)
+		snd_soc_dapm_sync(dapm);
 
 	snd_jack_report(jack->jack, jack->status);
 
-- 
1.7.0.4

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

end of thread, other threads:[~2013-10-23  8:25 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-10-21 13:37 [PATCH RESEND] ASoC: dont call dapm_sync while reporting jack always Vinod Koul
2013-10-22  8:32 ` Mark Brown
2013-10-22 15:36   ` Vinod Koul
2013-10-23  2:45     ` Patrick Lai
2013-10-23  8:25     ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.