xref: /openbmc/linux/Documentation/devicetree/bindings/remoteproc/qcom,sc7180-pas.yaml (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
18bb92d6fSKrzysztof Kozlowski# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
28bb92d6fSKrzysztof Kozlowski%YAML 1.2
38bb92d6fSKrzysztof Kozlowski---
48bb92d6fSKrzysztof Kozlowski$id: http://devicetree.org/schemas/remoteproc/qcom,sc7180-pas.yaml#
58bb92d6fSKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
68bb92d6fSKrzysztof Kozlowski
78bb92d6fSKrzysztof Kozlowskititle: Qualcomm SC7180/SC7280 Peripheral Authentication Service
88bb92d6fSKrzysztof Kozlowski
98bb92d6fSKrzysztof Kozlowskimaintainers:
108bb92d6fSKrzysztof Kozlowski  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
118bb92d6fSKrzysztof Kozlowski
128bb92d6fSKrzysztof Kozlowskidescription:
138bb92d6fSKrzysztof Kozlowski  Qualcomm SC7180/SC7280 SoC Peripheral Authentication Service loads and boots
148bb92d6fSKrzysztof Kozlowski  firmware on the Qualcomm DSP Hexagon cores.
158bb92d6fSKrzysztof Kozlowski
168bb92d6fSKrzysztof Kozlowskiproperties:
178bb92d6fSKrzysztof Kozlowski  compatible:
188bb92d6fSKrzysztof Kozlowski    enum:
198bb92d6fSKrzysztof Kozlowski      - qcom,sc7180-mpss-pas
208bb92d6fSKrzysztof Kozlowski      - qcom,sc7280-mpss-pas
218bb92d6fSKrzysztof Kozlowski
228bb92d6fSKrzysztof Kozlowski  reg:
238bb92d6fSKrzysztof Kozlowski    maxItems: 1
248bb92d6fSKrzysztof Kozlowski
258bb92d6fSKrzysztof Kozlowski  clocks:
268bb92d6fSKrzysztof Kozlowski    items:
278bb92d6fSKrzysztof Kozlowski      - description: XO clock
288bb92d6fSKrzysztof Kozlowski
298bb92d6fSKrzysztof Kozlowski  clock-names:
308bb92d6fSKrzysztof Kozlowski    items:
318bb92d6fSKrzysztof Kozlowski      - const: xo
328bb92d6fSKrzysztof Kozlowski
338bb92d6fSKrzysztof Kozlowski  interrupts:
348bb92d6fSKrzysztof Kozlowski    minItems: 6
358bb92d6fSKrzysztof Kozlowski
368bb92d6fSKrzysztof Kozlowski  interrupt-names:
378bb92d6fSKrzysztof Kozlowski    minItems: 6
388bb92d6fSKrzysztof Kozlowski
398bb92d6fSKrzysztof Kozlowski  power-domains:
408bb92d6fSKrzysztof Kozlowski    minItems: 2
418bb92d6fSKrzysztof Kozlowski    items:
428bb92d6fSKrzysztof Kozlowski      - description: CX power domain
438bb92d6fSKrzysztof Kozlowski      - description: MX power domain
448bb92d6fSKrzysztof Kozlowski      - description: MSS power domain
458bb92d6fSKrzysztof Kozlowski
468bb92d6fSKrzysztof Kozlowski  power-domain-names:
478bb92d6fSKrzysztof Kozlowski    minItems: 2
488bb92d6fSKrzysztof Kozlowski    items:
498bb92d6fSKrzysztof Kozlowski      - const: cx
508bb92d6fSKrzysztof Kozlowski      - const: mx
518bb92d6fSKrzysztof Kozlowski      - const: mss
528bb92d6fSKrzysztof Kozlowski
53cee616c6SNeil Armstrong  memory-region:
54*1e5c6933SKrzysztof Kozlowski    maxItems: 1
55cee616c6SNeil Armstrong    description: Reference to the reserved-memory for the Hexagon core
56cee616c6SNeil Armstrong
578bb92d6fSKrzysztof Kozlowski  qcom,qmp:
588bb92d6fSKrzysztof Kozlowski    $ref: /schemas/types.yaml#/definitions/phandle
598bb92d6fSKrzysztof Kozlowski    description: Reference to the AOSS side-channel message RAM.
608bb92d6fSKrzysztof Kozlowski
618bb92d6fSKrzysztof Kozlowski  smd-edge: false
628bb92d6fSKrzysztof Kozlowski
63cee616c6SNeil Armstrong  firmware-name:
64cee616c6SNeil Armstrong    $ref: /schemas/types.yaml#/definitions/string
65cee616c6SNeil Armstrong    description: Firmware name for the Hexagon core
66cee616c6SNeil Armstrong
678bb92d6fSKrzysztof Kozlowskirequired:
688bb92d6fSKrzysztof Kozlowski  - compatible
698bb92d6fSKrzysztof Kozlowski  - reg
70*1e5c6933SKrzysztof Kozlowski  - memory-region
718bb92d6fSKrzysztof Kozlowski
728bb92d6fSKrzysztof KozlowskiallOf:
738bb92d6fSKrzysztof Kozlowski  - $ref: /schemas/remoteproc/qcom,pas-common.yaml#
748bb92d6fSKrzysztof Kozlowski  - if:
758bb92d6fSKrzysztof Kozlowski      properties:
768bb92d6fSKrzysztof Kozlowski        compatible:
778bb92d6fSKrzysztof Kozlowski          enum:
788bb92d6fSKrzysztof Kozlowski            - qcom,sc7180-mpss-pas
798bb92d6fSKrzysztof Kozlowski    then:
808bb92d6fSKrzysztof Kozlowski      properties:
818bb92d6fSKrzysztof Kozlowski        power-domains:
828bb92d6fSKrzysztof Kozlowski          minItems: 3
838bb92d6fSKrzysztof Kozlowski        power-domain-names:
848bb92d6fSKrzysztof Kozlowski          minItems: 3
858bb92d6fSKrzysztof Kozlowski    else:
868bb92d6fSKrzysztof Kozlowski      properties:
878bb92d6fSKrzysztof Kozlowski        power-domains:
888bb92d6fSKrzysztof Kozlowski          maxItems: 2
898bb92d6fSKrzysztof Kozlowski        power-domain-names:
908bb92d6fSKrzysztof Kozlowski          maxItems: 2
918bb92d6fSKrzysztof Kozlowski
928bb92d6fSKrzysztof KozlowskiunevaluatedProperties: false
938bb92d6fSKrzysztof Kozlowski
948bb92d6fSKrzysztof Kozlowskiexamples:
958bb92d6fSKrzysztof Kozlowski  - |
968bb92d6fSKrzysztof Kozlowski    #include <dt-bindings/clock/qcom,rpmh.h>
978bb92d6fSKrzysztof Kozlowski    #include <dt-bindings/interrupt-controller/arm-gic.h>
988bb92d6fSKrzysztof Kozlowski    #include <dt-bindings/interrupt-controller/irq.h>
998bb92d6fSKrzysztof Kozlowski    #include <dt-bindings/power/qcom-rpmpd.h>
1008bb92d6fSKrzysztof Kozlowski
1018bb92d6fSKrzysztof Kozlowski    remoteproc@4080000 {
1028bb92d6fSKrzysztof Kozlowski        compatible = "qcom,sc7180-mpss-pas";
1038bb92d6fSKrzysztof Kozlowski        reg = <0x04080000 0x4040>;
1048bb92d6fSKrzysztof Kozlowski
1058bb92d6fSKrzysztof Kozlowski        clocks = <&rpmhcc RPMH_CXO_CLK>;
1068bb92d6fSKrzysztof Kozlowski        clock-names = "xo";
1078bb92d6fSKrzysztof Kozlowski
1088bb92d6fSKrzysztof Kozlowski        interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>,
1098bb92d6fSKrzysztof Kozlowski                              <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
1108bb92d6fSKrzysztof Kozlowski                              <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
1118bb92d6fSKrzysztof Kozlowski                              <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
1128bb92d6fSKrzysztof Kozlowski                              <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>,
1138bb92d6fSKrzysztof Kozlowski                              <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>;
1148bb92d6fSKrzysztof Kozlowski        interrupt-names = "wdog", "fatal", "ready", "handover",
1158bb92d6fSKrzysztof Kozlowski                          "stop-ack", "shutdown-ack";
1168bb92d6fSKrzysztof Kozlowski
1178bb92d6fSKrzysztof Kozlowski        memory-region = <&mpss_mem>;
1188bb92d6fSKrzysztof Kozlowski
1198bb92d6fSKrzysztof Kozlowski        power-domains = <&rpmhpd SC7180_CX>,
1208bb92d6fSKrzysztof Kozlowski                        <&rpmhpd SC7180_MX>,
1218bb92d6fSKrzysztof Kozlowski                        <&rpmhpd SC7180_MSS>;
1228bb92d6fSKrzysztof Kozlowski        power-domain-names = "cx", "mx", "mss";
1238bb92d6fSKrzysztof Kozlowski
1248bb92d6fSKrzysztof Kozlowski        qcom,qmp = <&aoss_qmp>;
1258bb92d6fSKrzysztof Kozlowski        qcom,smem-states = <&modem_smp2p_out 0>;
1268bb92d6fSKrzysztof Kozlowski        qcom,smem-state-names = "stop";
1278bb92d6fSKrzysztof Kozlowski
1288bb92d6fSKrzysztof Kozlowski        glink-edge {
1298bb92d6fSKrzysztof Kozlowski            interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>;
1308bb92d6fSKrzysztof Kozlowski            label = "modem";
1318bb92d6fSKrzysztof Kozlowski            qcom,remote-pid = <1>;
1328bb92d6fSKrzysztof Kozlowski            mboxes = <&apss_shared 12>;
1338bb92d6fSKrzysztof Kozlowski        };
1348bb92d6fSKrzysztof Kozlowski    };
135