[alsa-devel] ASoC - Output widgets
a.bouin at kerlink.fr
Mon Feb 25 10:39:15 CET 2008
> From: Mark Brown [mailto:broonie at opensource.wolfsonmicro.com]
> On Fri, Feb 22, 2008 at 05:39:54PM +0100, Alexandre BOUIN wrote:
> > Using ASoC layer, I'd like to perform this example behaviour with my
> > :
> > - 1 output mixer MIXOUT is connected to 2 outputs OUT1 and OUT2
> > - OUT1 and OUT2 can be powered independently
> > This seems easy, but atm while one is powered, the other is powered
> I may be misunderstanding what you're doing here but I suspect that
> you need to use snd_soc_dapm_set_endpoint() to mark the outputs that
> not in use as disconnected. If you do that then then DAPM will not
> power up the relevant output path.
> You can do this at any point at run time - see sound/soc/pxa/tosa.c for
> an example of this.
I've used tosa board as an example.
Maybe I've done something wrong but when I play sound files, both amplifier
are powered together.
After playing this track, both amplifier are shutdown together.
As it should be an audio path problem, I detail you my audio path here :
- 1 SND_SOC_DAPM_MIXER is connected to 2 SND_SOC_DAPM_PGA with power
- each PGA is connected to an SND_SOC_DAPM_OUTPUT
- according to tosa example :
- first OUTPUT is connected to a SND_SOC_DAPM_HP defined as endpoint
- second OUTPUT is connected to a SND_SOC_DAPM_SPK defined as endpoint
this SPK is set disconnected in my tosa_ac97_init -like function
Using DPAM debug traces, I've notice that both PGAs are powered regardless
of their ON/OFF status.
More information about the Alsa-devel