[alsa-devel] [PATCH] ASoC: rsnd: fixup 6ch settings to 8ch

Kuninori Morimoto kuninori.morimoto.gx at renesas.com
Tue Aug 27 02:42:49 CEST 2019


Hi Eugeniu

> We've been reviewing this patch in the context of Renesas-Yocto-v3.21.0
> BSP integration, where it is contained as commit [1].

OK, now, you are using BSP.

> > diff --git a/sound/soc/sh/rcar/ssi.c b/sound/soc/sh/rcar/ssi.c
> > index f5afab6..44bda21 100644
> > --- a/sound/soc/sh/rcar/ssi.c
> > +++ b/sound/soc/sh/rcar/ssi.c
> > @@ -303,6 +303,8 @@ static int rsnd_ssi_master_clk_start(struct rsnd_mod *mod,
> >  	if (rsnd_runtime_is_tdm_split(io))
> >  		chan = rsnd_io_converted_chan(io);
> >  
> > +	chan = rsnd_channel_normalization(chan);
> > +
> 
> Since the "chan" value is already normalized by calling:
>  => rsnd_ssi_master_clk_start()
>   => chan = rsnd_runtime_channel_for_ssi(io)
>    => rsnd_runtime_channel_for_ssi_with_params()
>     => rsnd_channel_normalization()
> 
> I was wondering if it is really required to call
> rsnd_channel_normalization() second time in ssi.c for fixing the issue
> described in this patch?

Please compare BSP and upstream patch.

	BSP
	https://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas-bsp.git/commit/?id=54721f595654

	upstream
	https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=66287def435315d9d8de740da4c543e37630b897

I don't know detail of BSP side, but I guess it doesn't have TDM Split support (?).
Because of that, it doesn't have (A) code.

	int rsnd_ssi_master_clk_start(xxx)
	{
		...
		int chan = rsnd_runtime_channel_for_ssi(io);
		...
		if (rsnd_runtime_is_tdm_split(io))
(A)			chan = rsnd_io_converted_chan(io);

		chan = rsnd_channel_normalization(chan);
		...
	}

Thank you for your help !!
Best regards
---
Kuninori Morimoto


More information about the Alsa-devel mailing list