On Sat, Mar 15, 2014 at 12:30:05PM +0100, Jean-Francois Moine wrote:
There may be many couples of CPU/CODEC DAI links. The example 2 is extracted from the Cubox DT.
Oh, here's some documentation - please include the documentation before the code, without the documentation the reader is going to have no idea what the code is supposed to be implementing.
- There may be one or many couples (simple-audio-card,cpu, simple-audio-card,codec)
- (see example 2).
This doesn't mention how they're matched up.
+sound {
- compatible = "simple-audio-card";
- simple-audio-card,name = "Cubox Audio";
- simple-audio-card,cpu@0 { /* I2S - HDMI */
sound-dai = <&audio1 0>;
format = "i2s";
- };
- simple-audio-card,codec@0 {
sound-dai = <&tda998x 0>;
- };
- simple-audio-card,cpu@1 { /* S/PDIF - HDMI */
sound-dai = <&audio1 1>;
- };
- simple-audio-card,codec@1 {
sound-dai = <&tda998x 1>;
- };
So, this is not exactly pretty as a binding. I would expect to see the links explicitly represented in the DT so you see the two DAIs in each link grouped into a container, the above isn't very easy to read and as Jyri says this lack of clarity also causes practical problems in that there's nowhere to place link specific parameters.
I think what I'd expect to see here is that the simple card can either be a container with a link in it directly or a container of links.