File Index
Files and directories
Sign in
FILE

qcom,adsp.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/remoteproc/qcom,adsp.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/remoteproc/qcom,adsp.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Qualcomm ADSP Peripheral Image Loader
  8
  9maintainers:
 10  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
 11
 12description:
 13  This document defines the binding for a component that loads and boots
 14  firmware on the Qualcomm ADSP Hexagon core.
 15
 16properties:
 17  compatible:
 18    enum:
 19      - qcom,msm8226-adsp-pil
 20      - qcom,msm8953-adsp-pil
 21      - qcom,msm8974-adsp-pil
 22      - qcom,msm8996-adsp-pil
 23      - qcom,msm8996-slpi-pil
 24      - qcom,msm8998-adsp-pas
 25      - qcom,msm8998-slpi-pas
 26      - qcom,sdm660-adsp-pas
 27      - qcom,sdm660-cdsp-pas
 28      - qcom,sdm845-adsp-pas
 29      - qcom,sdm845-cdsp-pas
 30      - qcom,sdm845-slpi-pas
 31
 32  reg:
 33    maxItems: 1
 34
 35  px-supply:
 36    description: Phandle to the PX regulator
 37
 38  qcom,qmp:
 39    $ref: /schemas/types.yaml#/definitions/phandle
 40    description: Reference to the AOSS side-channel message RAM.
 41
 42  memory-region:
 43    maxItems: 1
 44    description: Reference to the reserved-memory for the Hexagon core
 45
 46  firmware-name:
 47    maxItems: 1
 48    description: Firmware name for the Hexagon core
 49
 50required:
 51  - compatible
 52  - memory-region
 53
 54unevaluatedProperties: false
 55
 56allOf:
 57  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
 58  - if:
 59      properties:
 60        compatible:
 61          contains:
 62            enum:
 63              - qcom,msm8226-adsp-pil
 64              - qcom,msm8953-adsp-pil
 65              - qcom,msm8974-adsp-pil
 66              - qcom,msm8996-adsp-pil
 67              - qcom,msm8996-slpi-pil
 68              - qcom,msm8998-adsp-pas
 69              - qcom,msm8998-slpi-pas
 70              - qcom,sdm660-adsp-pas
 71              - qcom,sdm660-cdsp-pas
 72              - qcom,sdm845-adsp-pas
 73              - qcom,sdm845-cdsp-pas
 74              - qcom,sdm845-slpi-pas
 75    then:
 76      properties:
 77        clocks:
 78          items:
 79            - description: XO clock
 80        clock-names:
 81          items:
 82            - const: xo
 83
 84  - if:
 85      properties:
 86        compatible:
 87          contains:
 88            enum:
 89              - qcom,msm8226-adsp-pil
 90              - qcom,msm8953-adsp-pil
 91              - qcom,msm8974-adsp-pil
 92              - qcom,msm8996-adsp-pil
 93              - qcom,msm8996-slpi-pil
 94              - qcom,msm8998-adsp-pas
 95              - qcom,msm8998-slpi-pas
 96              - qcom,sdm660-adsp-pas
 97              - qcom,sdm660-cdsp-pas
 98              - qcom,sdm845-adsp-pas
 99              - qcom,sdm845-cdsp-pas
100              - qcom,sdm845-slpi-pas
101    then:
102      properties:
103        interrupts:
104          maxItems: 5
105        interrupt-names:
106          maxItems: 5
107
108  - if:
109      properties:
110        compatible:
111          contains:
112            enum:
113              - qcom,msm8226-adsp-pil
114              - qcom,msm8953-adsp-pil
115              - qcom,msm8974-adsp-pil
116              - qcom,msm8996-adsp-pil
117              - qcom,msm8998-adsp-pas
118              - qcom,sdm660-adsp-pas
119              - qcom,sdm660-cdsp-pas
120    then:
121      properties:
122        power-domains:
123          items:
124            - description: CX power domain
125        power-domain-names:
126          items:
127            - const: cx
128
129  - if:
130      properties:
131        compatible:
132          contains:
133            enum:
134              - qcom,msm8996-slpi-pil
135              - qcom,msm8998-slpi-pas
136    then:
137      properties:
138        power-domains:
139          items:
140            - description: SSC-CX power domain
141        power-domain-names:
142          items:
143            - const: ssc_cx
144      required:
145        - px-supply
146
147  - if:
148      properties:
149        compatible:
150          enum:
151            - qcom,sdm845-slpi-pas
152    then:
153      properties:
154        power-domains:
155          items:
156            - description: LCX power domain
157            - description: LMX power domain
158        power-domain-names:
159          items:
160            - const: lcx
161            - const: lmx
162
163  - if:
164      properties:
165        compatible:
166          contains:
167            enum:
168              - qcom,msm8226-adsp-pil
169              - qcom,msm8953-adsp-pil
170              - qcom,msm8974-adsp-pil
171              - qcom,msm8996-adsp-pil
172              - qcom,msm8996-slpi-pil
173              - qcom,msm8998-adsp-pas
174              - qcom,msm8998-slpi-pas
175              - qcom,sdm660-adsp-pas
176              - qcom,sdm660-cdsp-pas
177    then:
178      properties:
179        qcom,qmp: false
180
181examples:
182  - |
183    #include <dt-bindings/clock/qcom,rpmcc.h>
184    #include <dt-bindings/interrupt-controller/arm-gic.h>
185    #include <dt-bindings/interrupt-controller/irq.h>
186    #include <dt-bindings/power/qcom-rpmpd.h>
187    adsp {
188        compatible = "qcom,msm8974-adsp-pil";
189
190        interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>,
191                      <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
192                      <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
193                      <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
194                      <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
195        interrupt-names = "wdog",
196                  "fatal",
197                  "ready",
198                  "handover",
199                  "stop-ack";
200
201        clocks = <&rpmcc RPM_CXO_CLK>;
202        clock-names = "xo";
203
204        power-domains = <&rpmpd MSM8974_VDDCX>;
205        power-domain-names = "cx";
206
207        memory-region = <&adsp_region>;
208
209        qcom,smem-states = <&adsp_smp2p_out 0>;
210        qcom,smem-state-names = "stop";
211
212        smd-edge {
213            interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>;
214
215            qcom,ipc = <&apcs 8 8>;
216            qcom,smd-edge = <1>;
217        };
218    };
~/ Read-only file preview.