Re: [RFC][PATCH] ASoC: simple-card: Merge single and muti DAI link code.

From: Jean-Francois Moine
Date: Sun Aug 31 2014 - 12:26:28 EST


On Fri, 29 Aug 2014 14:46:37 +0800
Xiubo Li <Li.Xiubo@xxxxxxxxxxxxx> wrote:

> This patch merge single DAI link and muti-DAI links code together,
> and simply the simple-card driver code.
>
> And also do some other improvement:
>
> Since from the DAI format micro SND_SOC_DAIFMT_CBx_CFx, the 'CBx'
> mean Codec's bit clock is as master/slave and the 'CFx' mean Codec's
> frame clock is as master/slave.
>
> So these same DAI formats should be informed to CPU and CODE DAIs at
> the same time. For the Codec driver will set the bit clock and frame
> clock as the DAI formats said, but for the CPU driver, if the the
> bit clock or frame clock is as Codec master, so it should be set CPU
> DAI device as bit clock or frame clock as slave, and vice versa.
>
> The old code will cause confusion, and we should be clear that the
> letter 'C' here mean to Codec.
>
> Signed-off-by: Xiubo Li <Li.Xiubo@xxxxxxxxxxxxx>
> Cc: Kuninori Morimoto <kuninori.morimoto.gx@xxxxxxxxxxx>
> Cc: Jean-Francois Moine <moinejf@xxxxxxx>
> Cc: Jyri Sarha <jsarha@xxxxxx>
> Cc: Nicolin Chen <nicoleotsuka@xxxxxxxxx>
> ---
>
> Hi,
>
> This patch will break the old DT, so i just send one RFC version, and
> will add the old DT patches in next version if this patch can work
> well.
>
> Any comments and advices are welcome.

Hi Xiubo,

My DT is

sound {
compatible = "simple-audio-card";
simple-audio-card,name = "Cubox Audio";

simple-audio-card,dai-link@0 { /* I2S - HDMI */
format = "i2s";
cpu {
sound-dai = <&audio1 0>;
};
codec {
sound-dai = <&hdmi 0>;
};
};
...

I was getting 0x1001 as the format (codec clk & FRM master and i2s').

With your patch, I get 0x4000 (clk master & frame slave and no format).

--
Ken ar c'hentaà | ** Breizh ha Linux atav! **
Jef | http://moinejf.free.fr/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/