Hi Mark
These patches are DPCM support for simple-card, and milestone is (*)
* 1. simple DPCM support on DT 2. sampling rate convert support on DPCM 3. multi FE/BE support on DT 4. rsnd multi block IP use multi DPCM
1) - 4) are tidyup patches of simple-card 5) adds DPCM support on simple-card 6) tidyups asoc_simple_card_sub_parse_of() (based on 5) 7) is requred DPCM on Renesas R-Car driver 8) is DT support on dummy driver
5) and 8) are main patch for DPCM on simple-card.
I'm still not 100% understand about DPCM, but 8) patch was needed to DPCM FE/BE route, but is it wrong solution ?
About 5) patch, I know Lars-Peter pointed DT idea for DPCM via http://lxr.free-electrons.com/source/Documentation/devicetree/bindings/media... My 5) patch used this idea, but, not 100%. Because DPCM can use multi FE-BE connection (?) So, it is just pointing BE endpoint via "remote".
/* FrontEnd */ simple-audio-card,dai-link@0 {
remote = <&endpoint>;
cpu { ... }; codec { ... }; };
/* BackEnd */ endpoint: simple-audio-card,dai-link@1 {
cpu { ... }; codec { ... }; };
We can list many DAI in future ?
remote = <&endpoint0, &endpoint1, &endpoint2>;
Kuninori Morimoto (8): 1) ASoC: simple-card: use asoc_simple_xxx prefix 2) ASoC: simple-card: remove dai_link->cpu_dai_name when DT 3) ASoC: simple-card: dai_link->init should be cared when multi DAI 4) ASoC: simple-card: use common for_each_child_of_node() for loop 5) ASoC: simple-card: add DPCM support when DT case 6) ASoC: simple-card: remove is_top_level_node from asoc_simple_card_sub_parse_of() 7) ASoC: rsnd: add dai_link stream name 8) ASoC: add snd-soc-dummy DT support
.../devicetree/bindings/sound/simple-card.txt | 35 +++++++++ .../devicetree/bindings/sound/snd-soc-dummy | 13 +++ sound/soc/generic/simple-card.c | 83 +++++++++++++------- sound/soc/sh/rcar/core.c | 8 ++ sound/soc/sh/rcar/rsnd.h | 1 + sound/soc/soc-utils.c | 12 ++- 6 files changed, 120 insertions(+), 32 deletions(-) create mode 100644 Documentation/devicetree/bindings/sound/snd-soc-dummy