Linux 6.7-rc7
[linux-modified.git] / Documentation / devicetree / bindings / sound / qcom,q6apm.yaml
1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/qcom,q6apm.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: Qualcomm Audio Process Manager (Q6APM)
8
9 maintainers:
10   - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
11   - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
12
13 allOf:
14   - $ref: dai-common.yaml#
15   - $ref: /schemas/soc/qcom/qcom,apr-services.yaml#
16
17 properties:
18   compatible:
19     enum:
20       - qcom,q6apm
21
22   bedais:
23     type: object
24     $ref: /schemas/sound/qcom,q6apm-lpass-dais.yaml#
25     unevaluatedProperties: false
26     description: Qualcomm DSP audio ports
27
28   dais:
29     type: object
30     $ref: /schemas/sound/qcom,q6apm-dai.yaml#
31     unevaluatedProperties: false
32     description: Qualcomm DSP audio ports
33
34   '#sound-dai-cells':
35     const: 0
36
37 required:
38   - compatible
39   - bedais
40   - dais
41
42 unevaluatedProperties: false
43
44 examples:
45   - |
46     #include <dt-bindings/soc/qcom,gpr.h>
47
48     gpr {
49         #address-cells = <1>;
50         #size-cells = <0>;
51
52         service@1 {
53             reg = <GPR_APM_MODULE_IID>;
54             compatible = "qcom,q6apm";
55             #sound-dai-cells = <0>;
56             qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
57
58             dais {
59                 compatible = "qcom,q6apm-dais";
60                 iommus = <&apps_smmu 0x1801 0x0>;
61             };
62
63             bedais {
64                 compatible = "qcom,q6apm-lpass-dais";
65                 #sound-dai-cells = <1>;
66             };
67         };
68     };