[ALSA] soc - DAPM - add hook to read state of DAPM widget

This adds a hook to read the power state of a DAPM widget, I use this
in the gta02 driver to expose certain DAPM widgets in the mixer for
ease of audio routing.

Signed-off-by: Graeme Gregory <graeme@openmoko.org>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
Graeme Gregory 2008-04-30 19:27:40 +02:00 committed by Jaroslav Kysela
parent 54e7e6167d
commit eeec12bf7b
2 changed files with 25 additions and 0 deletions

View File

@ -223,6 +223,8 @@ int snd_soc_dapm_sys_add(struct device *dev);
/* dapm audio endpoint control */
int snd_soc_dapm_set_endpoint(struct snd_soc_codec *codec,
char *pin, int status);
int snd_soc_dapm_get_endpoint_status(struct snd_soc_codec *codec,
char *pin);
int snd_soc_dapm_sync_endpoints(struct snd_soc_codec *codec);
/* dapm widget types */

View File

@ -1342,6 +1342,29 @@ int snd_soc_dapm_set_endpoint(struct snd_soc_codec *codec,
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_set_endpoint);
/**
* snd_soc_dapm_get_endpoint_status - get audio endpoint status
* @codec: audio codec
* @endpoint: audio signal endpoint (or start point)
*
* Get audio endpoint status - connected or disconnected.
*
* Returns status
*/
int snd_soc_dapm_get_endpoint_status(struct snd_soc_codec *codec,
char *endpoint)
{
struct snd_soc_dapm_widget *w;
list_for_each_entry(w, &codec->dapm_widgets, list) {
if (!strcmp(w->name, endpoint))
return w->connected;
}
return 0;
}
EXPORT_SYMBOL_GPL(snd_soc_dapm_get_endpoint);
/**
* snd_soc_dapm_free - free dapm resources
* @socdev: SoC device