Qualcomm Audio Stream Manager (Q6ASM) binding

Q6ASM is one of the APR audio service on Q6DSP.
Please refer to qcom,apr.txt for details of the common apr service bindings
used by the apr service device.

- but must contain the following property:

- compatible:
	Usage: required
	Value type: <stringlist>
	Definition: must be "qcom,q6asm-v<MAJOR-NUMBER>.<MINOR-NUMBER>".
		    Or "qcom,q6asm" where the version number can be queried
		    from DSP.
		    example "qcom,q6asm-v2.0"

= ASM DAIs (Digital Audio Interface)
"dais" subnode of the ASM node represents dai specific configuration

- compatible:
	Usage: required
	Value type: <stringlist>
	Definition: must be "qcom,q6asm-dais".

- #sound-dai-cells
	Usage: required
	Value type: <u32>
	Definition: Must be 1

== ASM DAI is subnode of "dais" and represent a dai, it includes board specific
configuration of each dai. Must contain the following properties.

- reg
	Usage: required
	Value type: <u32>
	Definition: Must be dai id

- direction:
	Usage: Required for Compress offload dais
	Value type: <u32>
	Definition: Specifies the direction of the dai stream
			Q6ASM_DAI_TX_RX (0) for both tx and rx
			Q6ASM_DAI_TX (1) for only tx (Capture/Encode)
			Q6ASM_DAI_RX (2) for only rx (Playback/Decode)

- is-compress-dai:
	Usage: Required for Compress offload dais
	Value type: <boolean>
	Definition: present for Compress offload dais


= EXAMPLE
#include <dt-bindings/sound/qcom,q6asm.h>

apr-service@7 {
	compatible = "qcom,q6asm";
	reg = <APR_SVC_ASM>;
	q6asmdai: dais {
		compatible = "qcom,q6asm-dais";
		#address-cells = <1>;
		#size-cells = <0>;
		#sound-dai-cells = <1>;

		dai@0 {
			reg = <0>;
			direction = <Q6ASM_DAI_RX>;
			is-compress-dai;
		};
	};
};
