Hi Lars
Thank you for your comment
sound { compatible = "simple-audio-card";
/* FrontEnd */ simple-audio-card,dai-link@0 { ... format = "left_j"; remote = <&endpoint>; cpu { sound-dai = <&rcar_sound 0>; }; codec { /* dummy */ }; }; /* BackEnd */ endpoint: simple-audio-card,dai-link@1 { ... format = "left_j"; cpu { /* dummy */ }; codec1: codec { sound-dai = <&ak4643>; }; };
};
When you try to come up with with a binding try to completely ignore that something call DPCM exists. The binding is supposed to describe the hardware and how the different hardware components are interconnected. So try to come up with a binding that accurately describes the hardware connections. Once that is done try to map the binding onto the existing software framework. The last step may require some adjustments to the framework.
Now, my system is working well with simple-card by this
sound { compatible = "simple-audio-card"; ...
cpu { sound-dai = <&rcar_sound 0>; }; codec { sound-dai = <&ak4643>; }; };
The reason why I'm tring to support DPCM on simple-card is "sampling rate convert". My rcar_sound can convert sampling rate, and I tried to add this feature as rcar_sound property. But, Mark rejected and requests me to use DPCM for it, since it can be common featrue. Current existing simple-card can't use it, and I'm tring. But, am I misunderstanding ?
Best regards --- Kuninori Morimoto