diff options
author | Liam Girdwood <lrg@slimlogic.co.uk> | 2010-08-07 12:03:33 +0100 |
---|---|---|
committer | Sebastien Jan <s-jan@ti.com> | 2010-09-28 14:56:53 +0200 |
commit | 348d9d0f22e31225654520923ac9192c51104e8d (patch) | |
tree | 61a69895fe7554639695fbfecb069a4317ea3a8a /include | |
parent | f4cb60a6d2746b9d8ca614e35e18ee24c4a3f8c6 (diff) |
ASoC: DAPM - Add route validator
Route validator is required for creating and validating
FE to BE routes.
Signed-off-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to 'include')
-rw-r--r-- | include/sound/soc-dapm.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sound/soc-dapm.h b/include/sound/soc-dapm.h index d5bf72b76a07..1263973345a8 100644 --- a/include/sound/soc-dapm.h +++ b/include/sound/soc-dapm.h @@ -331,6 +331,8 @@ int snd_soc_dapm_new_widgets(struct snd_soc_dapm_context *dapm); void snd_soc_dapm_free(struct snd_soc_dapm_context *dapm); int snd_soc_dapm_add_routes(struct snd_soc_dapm_context *dapm, const struct snd_soc_dapm_route *route, int num); +int snd_soc_scenario_set_path(struct snd_soc_dapm_context *dapm, + char *source_name, char *sink_name); /* dapm events */ int snd_soc_dapm_stream_event(struct snd_soc_pcm_runtime *rtd, @@ -412,6 +414,7 @@ struct snd_soc_dapm_path { /* status */ u32 connect:1; /* source and sink widgets are connected */ u32 walked:1; /* path has been walked */ + u32 length:6; /* path length - used by route mapper */ int (*connected)(struct snd_soc_dapm_widget *source, struct snd_soc_dapm_widget *sink); @@ -436,6 +439,8 @@ struct snd_soc_dapm_widget { unsigned char shift; /* bits to shift */ unsigned int saved_value; /* widget saved value */ unsigned int value; /* widget current value */ + unsigned int path_idx; + unsigned int hops; unsigned int mask; /* non-shifted mask */ unsigned int on_val; /* on state value */ unsigned int off_val; /* off state value */ @@ -471,6 +476,7 @@ struct snd_soc_dapm_context { u32 pop_time; struct list_head widgets; struct list_head paths; + int num_valid_paths; enum snd_soc_bias_level bias_level; enum snd_soc_bias_level suspend_bias_level; struct delayed_work delayed_work; |