1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
4 $id: "http://devicetree.org/schemas/soc/qcom/qcom,apr.yaml#"
5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
7 title: Qualcomm APR/GPR (Asynchronous/Generic Packet Router) binding
10 - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
13 This binding describes the Qualcomm APR/GPR, APR/GPR is a IPC protocol for
14 communication between Application processor and QDSP. APR/GPR is mainly
15 used for audio/voice services on the QDSP.
24 $ref: /schemas/types.yaml#/definitions/uint32
25 enum: [1, 2, 3, 4, 5, 6, 7]
27 Selects the processor domain for apr
32 5 = Application processor Domain
34 7 = Application Processor2 Domain
38 $ref: /schemas/types.yaml#/definitions/uint32
42 Selects the processor domain for apr
47 5 = Application processor Domain
49 7 = Application Processor2 Domain
50 Selects the processor domain for gpr
53 3 = Application Processor Domain
66 APR/GPR node's client devices use subnodes for desired static port services.
84 4 = Audio Front End Service.
85 5 = Voice Stream Manager Service.
86 6 = Voice processing manager.
87 7 = Audio Stream Manager Service.
88 8 = Audio Device Manager Service.
89 9 = Multimode voice manager.
90 10 = Core voice stream.
91 11 = Core voice processor.
92 12 = Ultrasound stream manager.
93 13 = Listen stream manager.
95 1 = Audio Process Manager Service
96 2 = Proxy Resource Manager Service.
98 4 = Voice processing manager.
101 $ref: /schemas/sound/qcom,q6dsp-lpass-clocks.yaml#
102 description: Qualcomm DSP LPASS clock controller
103 unevaluatedProperties: false
106 # TODO: Waiting for Documentation/devicetree/bindings/sound/qcom,q6asm.txt
108 description: Qualcomm DSP audio ports
111 # TODO: Waiting for Documentation/devicetree/bindings/sound/qcom,q6adm.txt
113 description: Qualcomm DSP LPASS audio routing
115 qcom,protection-domain:
116 $ref: /schemas/types.yaml#/definitions/string-array
117 description: protection domain service name and path for apr service
119 "avs/audio", "msm/adsp/audio_pd".
120 "kernel/elf_loader", "msm/modem/wlan_pd".
121 "tms/servreg", "msm/adsp/audio_pd".
122 "tms/servreg", "msm/modem/wlan_pd".
123 "tms/servreg", "msm/slpi/sensor_pd".
136 const: qcom,q6afe-dais
150 - qcom,q6apm-lpass-dais
162 const: qcom,q6asm-dais
164 additionalProperties: false
170 additionalProperties: false
174 #include <dt-bindings/soc/qcom,apr.h>
176 compatible = "qcom,apr-v2";
177 qcom,domain = <APR_DOMAIN_ADSP>;
178 #address-cells = <1>;
182 compatible = "qcom,q6core";
183 reg = <APR_SVC_ADSP_CORE>;
184 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
188 compatible = "qcom,q6afe";
190 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
194 compatible = "qcom,q6asm";
196 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
200 compatible = "qcom,q6adm";
202 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";
207 #include <dt-bindings/soc/qcom,gpr.h>
209 compatible = "qcom,gpr";
210 qcom,domain = <GPR_DOMAIN_ID_ADSP>;
211 #address-cells = <1>;
215 compatible = "qcom,q6apm";
216 reg = <GPR_APM_MODULE_IID>;
217 qcom,protection-domain = "avs/audio", "msm/adsp/audio_pd";