alsa-devel.alsa-project.org archive mirror
 help / color / mirror / Atom feed
* Bug in 3.10 alsa routing?
@ 2016-08-13 18:39 noman pouigt
  2016-08-15  9:51 ` Lars-Peter Clausen
  0 siblings, 1 reply; 2+ messages in thread
From: noman pouigt @ 2016-08-13 18:39 UTC (permalink / raw)
  To: alsa-devel@alsa-project.org, broonie@kernel.org,
	Lars-Peter Clausen

Hello folks,

I am working on enabling a new alsa codec driver and
I am stuck with this below routing problem.

SND_SOC_DAPM_AIF_OUT("AIF1TX1",)

        { "AIF3RX1", NULL, "AIF3 Playback" },
        { "AIF1TX1 Input 1", NULL, "AIF3RX1" },
        { "AIF1TX1", AIF1TX1, "AIF1TX1 Input 1" },
        { "AIF1TX1", AIF1TX2, "AIF1TX1 Input 1" },
        { "AIF1 Capture", NULL, "AIF1TX1" },

AIF3 Playback and AIF1 Capture is stream name of AIF3
and AIF1 dai respectively.

After setting the paths using mixer command and triggering
AIF3 playback dai, I see that it is not powering AIF3 Playback widget.

After debugging I found the problem to be that ALSA core searches
for physically connected or active widget path before it
can power on the widget. So I think the codec developer wanted
me start the AIF1 capturing to turn on the whole path. However in our
system we just want to connect AIF3RX1 to AIF1TX1.

So i changed to below and now it is powering on the AIF3 Playback widget.
SND_SOC_DAPM_OUTPUT("DUMMY_NODE"),
       // { "AIF1 Capture", NULL, "AIF1TX1" },
       { "DUMMY_NODE", NULL, "AIF1TX1" },

Is ALSA core working as designed as I am using 3.11?

Thanks,
Variksla

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Bug in 3.10 alsa routing?
  2016-08-13 18:39 Bug in 3.10 alsa routing? noman pouigt
@ 2016-08-15  9:51 ` Lars-Peter Clausen
  0 siblings, 0 replies; 2+ messages in thread
From: Lars-Peter Clausen @ 2016-08-15  9:51 UTC (permalink / raw)
  To: noman pouigt, alsa-devel@alsa-project.org, broonie@kernel.org

On 08/13/2016 08:39 PM, noman pouigt wrote:
> Hello folks,
> 
> I am working on enabling a new alsa codec driver and
> I am stuck with this below routing problem.
> 
> SND_SOC_DAPM_AIF_OUT("AIF1TX1",)
> 
>         { "AIF3RX1", NULL, "AIF3 Playback" },
>         { "AIF1TX1 Input 1", NULL, "AIF3RX1" },
>         { "AIF1TX1", AIF1TX1, "AIF1TX1 Input 1" },
>         { "AIF1TX1", AIF1TX2, "AIF1TX1 Input 1" },
>         { "AIF1 Capture", NULL, "AIF1TX1" },
> 
> AIF3 Playback and AIF1 Capture is stream name of AIF3
> and AIF1 dai respectively.
> 
> After setting the paths using mixer command and triggering
> AIF3 playback dai, I see that it is not powering AIF3 Playback widget.
> 
> After debugging I found the problem to be that ALSA core searches
> for physically connected or active widget path before it
> can power on the widget. So I think the codec developer wanted
> me start the AIF1 capturing to turn on the whole path. However in our
> system we just want to connect AIF3RX1 to AIF1TX1.

Hi,

DAPM will power up a path if there is a connection between an active sink
and a active source. The playback widget is a source, the capture widget is
a sink. So if both of them are active you should see them power up. If only
one of them is active the system will stay powered down.

Maybe this presentation is also helpful:
http://events.linuxfoundation.org/sites/events/files/slides/dapm.pdf

- Lars

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-08-15  9:51 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-13 18:39 Bug in 3.10 alsa routing? noman pouigt
2016-08-15  9:51 ` Lars-Peter Clausen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).