[PATCH v3 13/16] ASoC: rich-graph-card-sample.dtsi: add DPCM sample (Single)
Kuninori Morimoto
kuninori.morimoto.gx at renesas.com
Fri Sep 10 03:22:59 CEST 2021
From: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
This patch adds DPCM link Single-CPU/Codec sample to
rich-graph-card-sample.dtsi.
This sample is assuming MIXer connection.
FE BE
****
CPU3 -- * * -- Codec3
CPU4 -- * *
****
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx at renesas.com>
---
sound/soc/generic/rich-graph-card-sample.dtsi | 36 +++++++++++++++++++
1 file changed, 36 insertions(+)
diff --git a/sound/soc/generic/rich-graph-card-sample.dtsi b/sound/soc/generic/rich-graph-card-sample.dtsi
index 7339d1999f99..2402827bbdaf 100644
--- a/sound/soc/generic/rich-graph-card-sample.dtsi
+++ b/sound/soc/generic/rich-graph-card-sample.dtsi
@@ -30,6 +30,13 @@ / {
* cpu1 <--| |<- at --------->| |-> codec1
* cpu2 <--| | | |-> codec2
* +-+ +-+
+ *
+ * [DPCM]
+ * FE BE
+ * ****
+ * cpu3 <- at --* *-- at -> codec3
+ * cpu4 <- at --* *
+ * ****
*/
rich-graph-card-sample {
/*
@@ -39,8 +46,16 @@ rich-graph-card-sample {
*/
compatible = "rich-custom-card-sample";
+ /* for [DPCM] */
+ /* BE FE */
+ routing = "TC DAI3 Playback", "DAI3 Playback",
+ "TC DAI3 Playback", "DAI4 Playback",
+ "DAI3 Capture", "TC DAI3 Capture",
+ "DAI4 Capture", "TC DAI3 Capture";
+
links = <&cpu0 /* normal: cpu side only */
&mcpu0 /* multi: cpu side only */
+ &fe00 &fe01 &be0 /* dpcm: both FE / BE */
>;
multi {
@@ -55,6 +70,18 @@ ports at 1 {
port at 2 { mcodec2_ep: endpoint { remote-endpoint = <&codec2_ep>; }; };
};
};
+
+ dpcm {
+ /* FE */
+ ports at 0 {
+ fe00: port at 0 { fe00_ep: endpoint { remote-endpoint = <&cpu3_ep>; }; };
+ fe01: port at 1 { fe01_ep: endpoint { remote-endpoint = <&cpu4_ep>; }; };
+ };
+ /* BE */
+ ports at 1 {
+ be0: port at 0 { be00_ep: endpoint { remote-endpoint = <&codec3_ep>; }; };
+ };
+ };
};
test_cpu {
@@ -72,6 +99,8 @@ ports {
cpu0: port at 0 { cpu0_ep: endpoint { remote-endpoint = <&codec0_ep>; }; };
port at 1 { cpu1_ep: endpoint { remote-endpoint = <&mcpu1_ep>; }; };
port at 2 { cpu2_ep: endpoint { remote-endpoint = <&mcpu2_ep>; }; };
+ port at 3 { cpu3_ep: endpoint { remote-endpoint = <&fe00_ep>; }; };
+ port at 4 { cpu4_ep: endpoint { remote-endpoint = <&fe01_ep>; }; };
};
};
@@ -85,9 +114,16 @@ test_codec {
*/
compatible = "test-codec";
ports {
+ /*
+ * prefix can be added to *component*,
+ * see rich-graph-card::routing
+ */
+ prefix = "TC";
+
port at 0 { codec0_ep: endpoint { remote-endpoint = <&cpu0_ep>; }; };
port at 1 { codec1_ep: endpoint { remote-endpoint = <&mcodec1_ep>; }; };
port at 2 { codec2_ep: endpoint { remote-endpoint = <&mcodec2_ep>; }; };
+ port at 3 { codec3_ep: endpoint { remote-endpoint = <&be00_ep>; }; };
};
};
};
--
2.25.1
More information about the Alsa-devel
mailing list