Re: [PATCH v3 4/4] ASoC: simple-card: Add DT documentation for multi-DAI links

From: Jyri Sarha
Date: Wed Mar 19 2014 - 14:32:30 EST


On 03/19/2014 03:46 PM, Mark Brown wrote:
On Wed, Mar 19, 2014 at 12:08:55PM +0200, Jyri Sarha wrote:

While we are at it we could update the bitclock-master and frame-master
syntax to be like this:

bitclock-master = "cpu"
frame-master = "codec"

With the above explicit definition all the daifmt settings could be defined
in link level. For backwards compatibility we could still define that
omitting the value equals "codec" and omitting the property equals "cpu".

It seems it'd be a bit more idiomatic to do that with a phandle rather
than with a string in order to allow extensions for things like TDM (the
I2S to mono speaker driver use case for example).


You mean a like this:

sound {
compatible = "simple-audio-card";
simple-audio-card,name = "Simple Audio";
simple-audio-card,widgets = ...
simple-audio-card,routing = ...

simple-audio-card,dai-link@0 { /* I2S - codec */
format = "i2s";
bitclock-master = <&codec 0>
frame-master = <&codec 0>;
bitclock-inversion = <1>;
simple-audio-card,cpu {
sound-dai = <&audio1 0>;
bitclock-inversion = <0>;
};
simple-audio-card,codec {
sound-dai = <&codec 0>;
system-clock-frequency = <12000000>;
};
};
...

Yep, that makes sense when considering tdm setups with multiple codecs on the same wires.

Best regards,
Jyri
--
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/