From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kuninori Morimoto Subject: [PATCH v3 6/7] ASoC: add audio-graph-card document Date: Thu, 2 Mar 2017 05:28:24 +0000 Message-ID: <8760jsmers.wl%kuninori.morimoto.gx@renesas.com> References: <87fuiwmeya.wl%kuninori.morimoto.gx@renesas.com> Mime-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <87fuiwmeya.wl%kuninori.morimoto.gx@renesas.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: Mark Brown , Rob Herring Cc: Linux-DT , Linux-ALSA , Simon List-Id: devicetree@vger.kernel.org From: Kuninori Morimoto "Audio Graph Card" = "Simple Card" + "OF-graph" Signed-off-by: Kuninori Morimoto --- v2 -> v3 - simple-graph-card -> audio-graph-card - cleanup unnecessary comments .../devicetree/bindings/sound/audio-graph-card.txt | 126 +++++++++++++++++++++ 1 file changed, 126 insertions(+) create mode 100644 Documentation/devicetree/bindings/sound/audio-graph-card.txt diff --git a/Documentation/devicetree/bindings/sound/audio-graph-card.txt b/Documentation/devicetree/bindings/sound/audio-graph-card.txt new file mode 100644 index 0000000..81213ac --- /dev/null +++ b/Documentation/devicetree/bindings/sound/audio-graph-card.txt @@ -0,0 +1,126 @@ +Audio Graph Card: + +Audio Graph Card specifies audio DAI connections of SoC <-> codec. +It is based on common bindings for device graphs. +see ${LINUX}/Documentation/devicetree/bindings/graph.txt + +Basically, Audio Graph Card property is same as Simple Card. +see ${LINUX}/Documentation/devicetree/bindings/sound/simple-card.txt + +Below are same as Simple-Card. + +- audio-graph-card,name +- audio-graph-card,format +- audio-graph-card,frame-master +- audio-graph-card,bitclock-master +- audio-graph-card,bitclock-inversion +- audio-graph-card,frame-inversion +- audio-graph-card,dai-tdm-slot-num +- audio-graph-card,dai-tdm-slot-width +- clocks / system-clock-frequency + +Required properties: + +- compatible : "asoc-audio-graph-card"; +- dais : list of CPU DAI port{s} + +Example: Single DAI case + + sound_card { + compatible = "asoc-audio-graph-card"; + + dais = <&cpu_port>; + }; + + dai-controller@0 { + ... + cpu_port: port { + cpu_endpoint: endpoint { + remote-endpoint = <&codec_endpoint>; + + audio-graph-card,format = "left_j"; + audio-graph-card,xxx = ... + ... + }; + }; + }; + + dai-controller@1 { + ... + port { + codec_endpoint: endpoint { + remote-endpoint = <&cpu_endpoint>; + }; + }; + }; + +Example: Multi DAI case + + sound_card { + compatible = "asoc-audio-graph-card"; + + dais = <&cpu_port0 + &cpu_port1 + &cpu_port2>; + }; + + dai-controller@0 { + ... + port { + codec0_endpoint: endpoint { + remote-endpoint = <&cpu_endpoint0>; + }; + }; + }; + + dai-controller@1 { + ... + port { + codec1_endpoint: endpoint { + remote-endpoint = <&cpu_endpoint1>; + }; + }; + }; + + dai-controller@2 { + ... + port { + codec2_endpoint: endpoint { + remote-endpoint = <&cpu_endpoint2>; + }; + }; + }; + + dai-controller@3 { + ... + ports { + cpu_port0: port@0 { + cpu_endpoint0: endpoint { + remote-endpoint = <&codec0_endpoint>; + + audio-graph-card,format = "left_j"; + audio-graph-card,xxx = ... + ... + }; + }; + cpu_port1: port@1 { + cpu_endpoint1: endpoint { + remote-endpoint = <&codec1_endpoint>; + + audio-graph-card,format = "i2s"; + audio-graph-card,xxx = ... + ... + }; + }; + cpu_port2: port@2 { + cpu_endpoint2: endpoint { + remote-endpoint = <&codec2_endpoint>; + + audio-graph-card,format = "i2s"; + audio-graph-card,xxx = ... + ... + }; + }; + }; + }; + -- 1.9.1