File Index
Files and directories
Sign in
FILE

qcom,sc7180-pas.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.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,sc7180-pas.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Qualcomm SC7180/SC7280 Peripheral Authentication Service
  8
  9maintainers:
 10  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
 11
 12description:
 13  Qualcomm SC7180/SC7280 SoC Peripheral Authentication Service loads and boots
 14  firmware on the Qualcomm DSP Hexagon cores.
 15
 16properties:
 17  compatible:
 18    enum:
 19      - qcom,sc7180-adsp-pas
 20      - qcom,sc7180-mpss-pas
 21      - qcom,sc7280-adsp-pas
 22      - qcom,sc7280-cdsp-pas
 23      - qcom,sc7280-mpss-pas
 24      - qcom,sc7280-wpss-pas
 25
 26  reg:
 27    maxItems: 1
 28
 29  clocks:
 30    items:
 31      - description: XO clock
 32
 33  clock-names:
 34    items:
 35      - const: xo
 36
 37  memory-region:
 38    maxItems: 1
 39    description: Reference to the reserved-memory for the Hexagon core
 40
 41  qcom,qmp:
 42    $ref: /schemas/types.yaml#/definitions/phandle
 43    description: Reference to the AOSS side-channel message RAM.
 44
 45  smd-edge: false
 46
 47  firmware-name:
 48    maxItems: 1
 49    description: Firmware name for the Hexagon core
 50
 51required:
 52  - compatible
 53  - reg
 54  - memory-region
 55
 56allOf:
 57  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
 58  - if:
 59      properties:
 60        compatible:
 61          enum:
 62            - qcom,sc7180-adsp-pas
 63    then:
 64      properties:
 65        interrupts:
 66          maxItems: 5
 67        interrupt-names:
 68          maxItems: 5
 69    else:
 70      properties:
 71        interrupts:
 72          minItems: 6
 73        interrupt-names:
 74          minItems: 6
 75
 76  - if:
 77      properties:
 78        compatible:
 79          enum:
 80            - qcom,sc7180-adsp-pas
 81            - qcom,sc7280-adsp-pas
 82    then:
 83      properties:
 84        power-domains:
 85          items:
 86            - description: LCX power domain
 87            - description: LMX power domain
 88        power-domain-names:
 89          items:
 90            - const: lcx
 91            - const: lmx
 92
 93  - if:
 94      properties:
 95        compatible:
 96          enum:
 97            - qcom,sc7180-mpss-pas
 98    then:
 99      properties:
100        power-domains:
101          items:
102            - description: CX power domain
103            - description: MX power domain
104            - description: MSS power domain
105        power-domain-names:
106          items:
107            - const: cx
108            - const: mx
109            - const: mss
110
111  - if:
112      properties:
113        compatible:
114          enum:
115            - qcom,sc7280-mpss-pas
116    then:
117      properties:
118        power-domains:
119          items:
120            - description: CX power domain
121            - description: MSS power domain
122        power-domain-names:
123          items:
124            - const: cx
125            - const: mss
126
127  - if:
128      properties:
129        compatible:
130          enum:
131            - qcom,sc7280-cdsp-pas
132            - qcom,sc7280-wpss-pas
133    then:
134      properties:
135        power-domains:
136          items:
137            - description: CX power domain
138            - description: MX power domain
139        power-domain-names:
140          items:
141            - const: cx
142            - const: mx
143
144unevaluatedProperties: false
145
146examples:
147  - |
148    #include <dt-bindings/clock/qcom,rpmh.h>
149    #include <dt-bindings/interrupt-controller/arm-gic.h>
150    #include <dt-bindings/interrupt-controller/irq.h>
151    #include <dt-bindings/power/qcom-rpmpd.h>
152
153    remoteproc@4080000 {
154        compatible = "qcom,sc7180-mpss-pas";
155        reg = <0x04080000 0x4040>;
156
157        clocks = <&rpmhcc RPMH_CXO_CLK>;
158        clock-names = "xo";
159
160        interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>,
161                              <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
162                              <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
163                              <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
164                              <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
165                              <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
166        interrupt-names = "wdog", "fatal", "ready", "handover",
167                          "stop-ack", "shutdown-ack";
168
169        memory-region = <&mpss_mem>;
170
171        power-domains = <&rpmhpd SC7180_CX>,
172                        <&rpmhpd SC7180_MX>,
173                        <&rpmhpd SC7180_MSS>;
174        power-domain-names = "cx", "mx", "mss";
175
176        qcom,qmp = <&aoss_qmp>;
177        qcom,smem-states = <&modem_smp2p_out 0>;
178        qcom,smem-state-names = "stop";
179
180        glink-edge {
181            interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
182            label = "modem";
183            qcom,remote-pid = <1>;
184            mboxes = <&apss_shared 12>;
185        };
186    };
~/ Read-only file preview.