ALSA: jack: Reduce delay in jack status notification

Change will bypass the dapm sync to report the jack status
with out delays.

Signed-off-by: Gopikrishnaiah Anandan <agopik@codeaurora.org>
This commit is contained in:
Gopikrishnaiah Anandan 2013-02-15 19:16:45 -05:00 committed by Stephen Boyd
parent 9a46cb4de9
commit 09ab9ae7ae
2 changed files with 19 additions and 0 deletions

View file

@ -395,6 +395,8 @@ int snd_soc_set_runtime_hwparams(struct snd_pcm_substream *substream,
int snd_soc_jack_new(struct snd_soc_codec *codec, const char *id, int type,
struct snd_soc_jack *jack);
void snd_soc_jack_report(struct snd_soc_jack *jack, int status, int mask);
void snd_soc_jack_report_no_dapm(struct snd_soc_jack *jack, int status,
int mask);
int snd_soc_jack_add_pins(struct snd_soc_jack *jack, int count,
struct snd_soc_jack_pin *pins);
void snd_soc_jack_notifier_register(struct snd_soc_jack *jack,

View file

@ -113,6 +113,23 @@ out:
}
EXPORT_SYMBOL_GPL(snd_soc_jack_report);
/**
* snd_soc_jack_report_no_dapm - Report the current status for a jack
* without DAPM sync
* @jack: the jack
* @status: a bitmask of enum snd_jack_type values that are currently detected.
* @mask: a bitmask of enum snd_jack_type values that being reported.
*/
void snd_soc_jack_report_no_dapm(struct snd_soc_jack *jack, int status,
int mask)
{
jack->status &= ~mask;
jack->status |= status & mask;
snd_jack_report(jack->jack, jack->status);
}
EXPORT_SYMBOL_GPL(snd_soc_jack_report_no_dapm);
/**
* snd_soc_jack_add_zones - Associate voltage zones with jack
*