diff options
author | Liam Girdwood <lrg@ti.com> | 2012-04-18 06:41:11 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2012-04-18 13:23:00 -0400 |
commit | ec2e3031b65f23f66840b5c89c4b83076831a435 (patch) | |
tree | b85d6a5590fc0eaa3a5e7ca1a67e97b673629e65 /include/sound | |
parent | 0cbe4b36b075e80f3149a91ef640bc7930aa94c7 (diff) |
ASoC: dapm: Add API call to query valid DAPM paths
In preparation for ASoC DSP support.
Add a DAPM API call to determine whether a DAPM audio path is valid between
source and sink widgets. This also takes into account all kcontrol mux and mixer
settings in between the source and sink widgets to validate the audio path.
This will be used by the DSP core to determine the runtime DAI mappings
between FE and BE DAIs in order to run PCM operations.
Signed-off-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/sound')
-rw-r--r-- | include/sound/soc-dapm.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/sound/soc-dapm.h b/include/sound/soc-dapm.h index bea0c8658aa0..e3833d9f1914 100644 --- a/include/sound/soc-dapm.h +++ b/include/sound/soc-dapm.h | |||
@@ -321,6 +321,7 @@ struct snd_soc_dapm_pin; | |||
321 | struct snd_soc_dapm_route; | 321 | struct snd_soc_dapm_route; |
322 | struct snd_soc_dapm_context; | 322 | struct snd_soc_dapm_context; |
323 | struct regulator; | 323 | struct regulator; |
324 | struct snd_soc_dapm_widget_list; | ||
324 | 325 | ||
325 | int dapm_reg_event(struct snd_soc_dapm_widget *w, | 326 | int dapm_reg_event(struct snd_soc_dapm_widget *w, |
326 | struct snd_kcontrol *kcontrol, int event); | 327 | struct snd_kcontrol *kcontrol, int event); |
@@ -403,6 +404,10 @@ void snd_soc_dapm_auto_nc_codec_pins(struct snd_soc_codec *codec); | |||
403 | /* Mostly internal - should not normally be used */ | 404 | /* Mostly internal - should not normally be used */ |
404 | void dapm_mark_dirty(struct snd_soc_dapm_widget *w, const char *reason); | 405 | void dapm_mark_dirty(struct snd_soc_dapm_widget *w, const char *reason); |
405 | 406 | ||
407 | /* dapm path query */ | ||
408 | int snd_soc_dapm_dai_get_connected_widgets(struct snd_soc_dai *dai, int stream, | ||
409 | struct snd_soc_dapm_widget_list **list); | ||
410 | |||
406 | /* dapm widget types */ | 411 | /* dapm widget types */ |
407 | enum snd_soc_dapm_type { | 412 | enum snd_soc_dapm_type { |
408 | snd_soc_dapm_input = 0, /* input pin */ | 413 | snd_soc_dapm_input = 0, /* input pin */ |