aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound/soc-dapm.h
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2011-06-13 11:42:29 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-06-13 13:59:33 -0400
commitbf3a9e137cf1a1c664f44acfa36a487f0437f6aa (patch)
tree666892dd62a26bf38733d79386b5c5909c896b93 /include/sound/soc-dapm.h
parent5bef44f9b4849d1c3af4ed2ea93061ff56e68cd7 (diff)
ASoC: Add weak routes for sidetone style paths
Normally DAPM will power up any connected audio path. This is not ideal for sidetone paths as with sidetone paths the audio path is not wanted in itself, it is only desired if the two paths it provides a sidetone between are both active. If the sidetone path causes a power up then it can be hard to minimise pops as we first power up either the sidetone or the main output path and then power the other, with the second power up potentially introducing a DC offset. Address this by introducing the concept of a weak path. If a path is marked as weak then DAPM will ignore that path when walking the graph, though all the relevant controls are still available to the application layer to allow these paths to be configured. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'include/sound/soc-dapm.h')
-rw-r--r--include/sound/soc-dapm.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/sound/soc-dapm.h b/include/sound/soc-dapm.h
index 7415878c8b37..7c5465b14d33 100644
--- a/include/sound/soc-dapm.h
+++ b/include/sound/soc-dapm.h
@@ -348,6 +348,8 @@ int snd_soc_dapm_new_widgets(struct snd_soc_dapm_context *dapm);
348void snd_soc_dapm_free(struct snd_soc_dapm_context *dapm); 348void snd_soc_dapm_free(struct snd_soc_dapm_context *dapm);
349int snd_soc_dapm_add_routes(struct snd_soc_dapm_context *dapm, 349int snd_soc_dapm_add_routes(struct snd_soc_dapm_context *dapm,
350 const struct snd_soc_dapm_route *route, int num); 350 const struct snd_soc_dapm_route *route, int num);
351int snd_soc_dapm_weak_routes(struct snd_soc_dapm_context *dapm,
352 const struct snd_soc_dapm_route *route, int num);
351 353
352/* dapm events */ 354/* dapm events */
353int snd_soc_dapm_stream_event(struct snd_soc_pcm_runtime *rtd, 355int snd_soc_dapm_stream_event(struct snd_soc_pcm_runtime *rtd,