Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

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 (Digial 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
			0 for both tx and rx
			1 for only tx (Capture/Encode)
			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

q6asm@7 {
	compatible = "qcom,q6asm";
	reg = <APR_SVC_ASM>;
	q6asmdai: dais {
		compatible = "qcom,q6asm-dais";
		#sound-dai-cells = <1>;
		mm@0 {
			reg = <0>;
			direction = <2>;
			is-compress-dai;
		};
	};
};