[Sound-open-firmware] [PATCH] topology: AIF directions are codec centric wrt PCMs

Liam Girdwood liam.r.girdwood at linux.intel.com
Thu Dec 14 09:18:23 CET 2017


On Thu, 2017-12-14 at 09:26 +0800, Keyon Jie wrote:
> 
> On 2017年12月14日 05:10, Liam Girdwood wrote:
> > Commit 0a1a9bbc492e4eb22173ed57c7f5499c8f106289 discovered a bug in
> > the direction of AIF widgets in relation to PCMs. AIF widgets are
> > codec
> > centric in ASoC so topology must align.
> > 
> > Signed-off-by: Liam Girdwood <liam.r.girdwood at linux.intel.com>
> > ---
> >   topology/m4/local.m4 | 4 ++--
> >   1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/topology/m4/local.m4 b/topology/m4/local.m4
> > index 08425ed..c0ffef2 100644
> > --- a/topology/m4/local.m4
> > +++ b/topology/m4/local.m4
> > @@ -96,7 +96,7 @@ define(`W_PCM_PLAYBACK',
> >   `}'
> >   `SectionWidget."'N_PCMP`" {'
> >   `	index "'PIPELINE_ID`"'
> > -`	type "aif_out"'
> > +`	type "aif_in"'
> 
> This is opposite to what the driver mapping based on our test.

Are you sure ? Most (all ?) of the ASoC/Topology logic is codec centric
(i.e. directions are with respect to the codec). Without this patch
playback/capture (using std topology) would use the incorrect IPC
configuration data.

i.e. Playback host DMA would use the capture hopst DMA config (with
sink periods == 0, but source_periods == 2)

Liam

> 
> >   `	no_pm "true"'
> >   `	stream_name "'$1`"'
> >   `	data ['
> > @@ -131,7 +131,7 @@ define(`W_PCM_CAPTURE',
> >   `}'
> >   `SectionWidget."'N_PCMC`" {'
> >   `	index "'PIPELINE_ID`"'
> > -`	type "aif_in"'
> > +`	type "aif_out"'
> 
> ditto.
> 
> Thanks,
> ~Keyon
> 
> >   `	no_pm "true"'
> >   `	stream_name "'$1`"'
> >   `	data ['
> > 
> 
> _______________________________________________
> Sound-open-firmware mailing list
> Sound-open-firmware at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/sound-open-firmware


More information about the Sound-open-firmware mailing list