18c2ecf20Sopenharmony_ciQualcomm Audio Stream Manager (Q6ASM) binding
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciQ6ASM is one of the APR audio service on Q6DSP.
48c2ecf20Sopenharmony_ciPlease refer to qcom,apr.txt for details of the common apr service bindings
58c2ecf20Sopenharmony_ciused by the apr service device.
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci- but must contain the following property:
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ci- compatible:
108c2ecf20Sopenharmony_ci	Usage: required
118c2ecf20Sopenharmony_ci	Value type: <stringlist>
128c2ecf20Sopenharmony_ci	Definition: must be "qcom,q6asm-v<MAJOR-NUMBER>.<MINOR-NUMBER>".
138c2ecf20Sopenharmony_ci		    Or "qcom,q6asm" where the version number can be queried
148c2ecf20Sopenharmony_ci		    from DSP.
158c2ecf20Sopenharmony_ci		    example "qcom,q6asm-v2.0"
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci= ASM DAIs (Digial Audio Interface)
188c2ecf20Sopenharmony_ci"dais" subnode of the ASM node represents dai specific configuration
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci- compatible:
218c2ecf20Sopenharmony_ci	Usage: required
228c2ecf20Sopenharmony_ci	Value type: <stringlist>
238c2ecf20Sopenharmony_ci	Definition: must be "qcom,q6asm-dais".
248c2ecf20Sopenharmony_ci
258c2ecf20Sopenharmony_ci- #sound-dai-cells
268c2ecf20Sopenharmony_ci	Usage: required
278c2ecf20Sopenharmony_ci	Value type: <u32>
288c2ecf20Sopenharmony_ci	Definition: Must be 1
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ci== ASM DAI is subnode of "dais" and represent a dai, it includes board specific
318c2ecf20Sopenharmony_ciconfiguration of each dai. Must contain the following properties.
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci- reg
348c2ecf20Sopenharmony_ci	Usage: required
358c2ecf20Sopenharmony_ci	Value type: <u32>
368c2ecf20Sopenharmony_ci	Definition: Must be dai id
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci- direction:
398c2ecf20Sopenharmony_ci	Usage: Required for Compress offload dais
408c2ecf20Sopenharmony_ci	Value type: <u32>
418c2ecf20Sopenharmony_ci	Definition: Specifies the direction of the dai stream
428c2ecf20Sopenharmony_ci			Q6ASM_DAI_TX_RX (0) for both tx and rx
438c2ecf20Sopenharmony_ci			Q6ASM_DAI_TX (1) for only tx (Capture/Encode)
448c2ecf20Sopenharmony_ci			Q6ASM_DAI_RX (2) for only rx (Playback/Decode)
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci- is-compress-dai:
478c2ecf20Sopenharmony_ci	Usage: Required for Compress offload dais
488c2ecf20Sopenharmony_ci	Value type: <boolean>
498c2ecf20Sopenharmony_ci	Definition: present for Compress offload dais
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ci= EXAMPLE
538c2ecf20Sopenharmony_ci#include <dt-bindings/sound/qcom,q6asm.h>
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciapr-service@7 {
568c2ecf20Sopenharmony_ci	compatible = "qcom,q6asm";
578c2ecf20Sopenharmony_ci	reg = <APR_SVC_ASM>;
588c2ecf20Sopenharmony_ci	q6asmdai: dais {
598c2ecf20Sopenharmony_ci		compatible = "qcom,q6asm-dais";
608c2ecf20Sopenharmony_ci		#address-cells = <1>;
618c2ecf20Sopenharmony_ci		#size-cells = <0>;
628c2ecf20Sopenharmony_ci		#sound-dai-cells = <1>;
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_ci		dai@0 {
658c2ecf20Sopenharmony_ci			reg = <0>;
668c2ecf20Sopenharmony_ci			direction = <Q6ASM_DAI_RX>;
678c2ecf20Sopenharmony_ci			is-compress-dai;
688c2ecf20Sopenharmony_ci		};
698c2ecf20Sopenharmony_ci	};
708c2ecf20Sopenharmony_ci};
71