1cb7aa33aSEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 2cb7aa33aSEmmanuel Vadot%YAML 1.2 3cb7aa33aSEmmanuel Vadot--- 4cb7aa33aSEmmanuel Vadot$id: http://devicetree.org/schemas/remoteproc/qcom,sc7180-pas.yaml# 5cb7aa33aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6cb7aa33aSEmmanuel Vadot 7cb7aa33aSEmmanuel Vadottitle: Qualcomm SC7180/SC7280 Peripheral Authentication Service 8cb7aa33aSEmmanuel Vadot 9cb7aa33aSEmmanuel Vadotmaintainers: 10cb7aa33aSEmmanuel Vadot - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 11cb7aa33aSEmmanuel Vadot 12cb7aa33aSEmmanuel Vadotdescription: 13cb7aa33aSEmmanuel Vadot Qualcomm SC7180/SC7280 SoC Peripheral Authentication Service loads and boots 14cb7aa33aSEmmanuel Vadot firmware on the Qualcomm DSP Hexagon cores. 15cb7aa33aSEmmanuel Vadot 16cb7aa33aSEmmanuel Vadotproperties: 17cb7aa33aSEmmanuel Vadot compatible: 18cb7aa33aSEmmanuel Vadot enum: 1984943d6fSEmmanuel Vadot - qcom,sc7180-adsp-pas 20cb7aa33aSEmmanuel Vadot - qcom,sc7180-mpss-pas 21*8d13bc63SEmmanuel Vadot - qcom,sc7280-adsp-pas 22*8d13bc63SEmmanuel Vadot - qcom,sc7280-cdsp-pas 23cb7aa33aSEmmanuel Vadot - qcom,sc7280-mpss-pas 24*8d13bc63SEmmanuel Vadot - qcom,sc7280-wpss-pas 25cb7aa33aSEmmanuel Vadot 26cb7aa33aSEmmanuel Vadot reg: 27cb7aa33aSEmmanuel Vadot maxItems: 1 28cb7aa33aSEmmanuel Vadot 29cb7aa33aSEmmanuel Vadot clocks: 30cb7aa33aSEmmanuel Vadot items: 31cb7aa33aSEmmanuel Vadot - description: XO clock 32cb7aa33aSEmmanuel Vadot 33cb7aa33aSEmmanuel Vadot clock-names: 34cb7aa33aSEmmanuel Vadot items: 35cb7aa33aSEmmanuel Vadot - const: xo 36cb7aa33aSEmmanuel Vadot 37cb7aa33aSEmmanuel Vadot memory-region: 38aa1a8ff2SEmmanuel Vadot maxItems: 1 39cb7aa33aSEmmanuel Vadot description: Reference to the reserved-memory for the Hexagon core 40cb7aa33aSEmmanuel Vadot 41cb7aa33aSEmmanuel Vadot qcom,qmp: 42cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 43cb7aa33aSEmmanuel Vadot description: Reference to the AOSS side-channel message RAM. 44cb7aa33aSEmmanuel Vadot 45cb7aa33aSEmmanuel Vadot smd-edge: false 46cb7aa33aSEmmanuel Vadot 47cb7aa33aSEmmanuel Vadot firmware-name: 48cb7aa33aSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 49cb7aa33aSEmmanuel Vadot description: Firmware name for the Hexagon core 50cb7aa33aSEmmanuel Vadot 51cb7aa33aSEmmanuel Vadotrequired: 52cb7aa33aSEmmanuel Vadot - compatible 53cb7aa33aSEmmanuel Vadot - reg 54aa1a8ff2SEmmanuel Vadot - memory-region 55cb7aa33aSEmmanuel Vadot 56cb7aa33aSEmmanuel VadotallOf: 57cb7aa33aSEmmanuel Vadot - $ref: /schemas/remoteproc/qcom,pas-common.yaml# 58cb7aa33aSEmmanuel Vadot - if: 59cb7aa33aSEmmanuel Vadot properties: 60cb7aa33aSEmmanuel Vadot compatible: 61cb7aa33aSEmmanuel Vadot enum: 6284943d6fSEmmanuel Vadot - qcom,sc7180-adsp-pas 6384943d6fSEmmanuel Vadot then: 6484943d6fSEmmanuel Vadot properties: 6584943d6fSEmmanuel Vadot interrupts: 6684943d6fSEmmanuel Vadot maxItems: 5 6784943d6fSEmmanuel Vadot interrupt-names: 6884943d6fSEmmanuel Vadot maxItems: 5 6984943d6fSEmmanuel Vadot else: 7084943d6fSEmmanuel Vadot properties: 7184943d6fSEmmanuel Vadot interrupts: 7284943d6fSEmmanuel Vadot minItems: 6 7384943d6fSEmmanuel Vadot interrupt-names: 7484943d6fSEmmanuel Vadot minItems: 6 7584943d6fSEmmanuel Vadot 7684943d6fSEmmanuel Vadot - if: 7784943d6fSEmmanuel Vadot properties: 7884943d6fSEmmanuel Vadot compatible: 7984943d6fSEmmanuel Vadot enum: 8084943d6fSEmmanuel Vadot - qcom,sc7180-adsp-pas 81*8d13bc63SEmmanuel Vadot - qcom,sc7280-adsp-pas 8284943d6fSEmmanuel Vadot then: 8384943d6fSEmmanuel Vadot properties: 8484943d6fSEmmanuel Vadot power-domains: 8584943d6fSEmmanuel Vadot items: 8684943d6fSEmmanuel Vadot - description: LCX power domain 8784943d6fSEmmanuel Vadot - description: LMX power domain 8884943d6fSEmmanuel Vadot power-domain-names: 8984943d6fSEmmanuel Vadot items: 9084943d6fSEmmanuel Vadot - const: lcx 9184943d6fSEmmanuel Vadot - const: lmx 9284943d6fSEmmanuel Vadot 9384943d6fSEmmanuel Vadot - if: 9484943d6fSEmmanuel Vadot properties: 9584943d6fSEmmanuel Vadot compatible: 9684943d6fSEmmanuel Vadot enum: 97cb7aa33aSEmmanuel Vadot - qcom,sc7180-mpss-pas 98cb7aa33aSEmmanuel Vadot then: 99cb7aa33aSEmmanuel Vadot properties: 100cb7aa33aSEmmanuel Vadot power-domains: 10184943d6fSEmmanuel Vadot items: 10284943d6fSEmmanuel Vadot - description: CX power domain 10384943d6fSEmmanuel Vadot - description: MX power domain 10484943d6fSEmmanuel Vadot - description: MSS power domain 105cb7aa33aSEmmanuel Vadot power-domain-names: 10684943d6fSEmmanuel Vadot items: 10784943d6fSEmmanuel Vadot - const: cx 10884943d6fSEmmanuel Vadot - const: mx 10984943d6fSEmmanuel Vadot - const: mss 11084943d6fSEmmanuel Vadot 11184943d6fSEmmanuel Vadot - if: 11284943d6fSEmmanuel Vadot properties: 11384943d6fSEmmanuel Vadot compatible: 11484943d6fSEmmanuel Vadot enum: 11584943d6fSEmmanuel Vadot - qcom,sc7280-mpss-pas 11684943d6fSEmmanuel Vadot then: 117cb7aa33aSEmmanuel Vadot properties: 118cb7aa33aSEmmanuel Vadot power-domains: 11984943d6fSEmmanuel Vadot items: 12084943d6fSEmmanuel Vadot - description: CX power domain 121*8d13bc63SEmmanuel Vadot - description: MSS power domain 122*8d13bc63SEmmanuel Vadot power-domain-names: 123*8d13bc63SEmmanuel Vadot items: 124*8d13bc63SEmmanuel Vadot - const: cx 125*8d13bc63SEmmanuel Vadot - const: mss 126*8d13bc63SEmmanuel Vadot 127*8d13bc63SEmmanuel Vadot - if: 128*8d13bc63SEmmanuel Vadot properties: 129*8d13bc63SEmmanuel Vadot compatible: 130*8d13bc63SEmmanuel Vadot enum: 131*8d13bc63SEmmanuel Vadot - qcom,sc7280-cdsp-pas 132*8d13bc63SEmmanuel Vadot - qcom,sc7280-wpss-pas 133*8d13bc63SEmmanuel Vadot then: 134*8d13bc63SEmmanuel Vadot properties: 135*8d13bc63SEmmanuel Vadot power-domains: 136*8d13bc63SEmmanuel Vadot items: 137*8d13bc63SEmmanuel Vadot - description: CX power domain 13884943d6fSEmmanuel Vadot - description: MX power domain 139cb7aa33aSEmmanuel Vadot power-domain-names: 14084943d6fSEmmanuel Vadot items: 14184943d6fSEmmanuel Vadot - const: cx 14284943d6fSEmmanuel Vadot - const: mx 143cb7aa33aSEmmanuel Vadot 144cb7aa33aSEmmanuel VadotunevaluatedProperties: false 145cb7aa33aSEmmanuel Vadot 146cb7aa33aSEmmanuel Vadotexamples: 147cb7aa33aSEmmanuel Vadot - | 148cb7aa33aSEmmanuel Vadot #include <dt-bindings/clock/qcom,rpmh.h> 149cb7aa33aSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 150cb7aa33aSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 151cb7aa33aSEmmanuel Vadot #include <dt-bindings/power/qcom-rpmpd.h> 152cb7aa33aSEmmanuel Vadot 153cb7aa33aSEmmanuel Vadot remoteproc@4080000 { 154cb7aa33aSEmmanuel Vadot compatible = "qcom,sc7180-mpss-pas"; 155cb7aa33aSEmmanuel Vadot reg = <0x04080000 0x4040>; 156cb7aa33aSEmmanuel Vadot 157cb7aa33aSEmmanuel Vadot clocks = <&rpmhcc RPMH_CXO_CLK>; 158cb7aa33aSEmmanuel Vadot clock-names = "xo"; 159cb7aa33aSEmmanuel Vadot 160cb7aa33aSEmmanuel Vadot interrupts-extended = <&intc GIC_SPI 266 IRQ_TYPE_EDGE_RISING>, 161cb7aa33aSEmmanuel Vadot <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 162cb7aa33aSEmmanuel Vadot <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 163cb7aa33aSEmmanuel Vadot <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 164cb7aa33aSEmmanuel Vadot <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 165cb7aa33aSEmmanuel Vadot <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 166cb7aa33aSEmmanuel Vadot interrupt-names = "wdog", "fatal", "ready", "handover", 167cb7aa33aSEmmanuel Vadot "stop-ack", "shutdown-ack"; 168cb7aa33aSEmmanuel Vadot 169cb7aa33aSEmmanuel Vadot memory-region = <&mpss_mem>; 170cb7aa33aSEmmanuel Vadot 171cb7aa33aSEmmanuel Vadot power-domains = <&rpmhpd SC7180_CX>, 172cb7aa33aSEmmanuel Vadot <&rpmhpd SC7180_MX>, 173cb7aa33aSEmmanuel Vadot <&rpmhpd SC7180_MSS>; 174cb7aa33aSEmmanuel Vadot power-domain-names = "cx", "mx", "mss"; 175cb7aa33aSEmmanuel Vadot 176cb7aa33aSEmmanuel Vadot qcom,qmp = <&aoss_qmp>; 177cb7aa33aSEmmanuel Vadot qcom,smem-states = <&modem_smp2p_out 0>; 178cb7aa33aSEmmanuel Vadot qcom,smem-state-names = "stop"; 179cb7aa33aSEmmanuel Vadot 180cb7aa33aSEmmanuel Vadot glink-edge { 181cb7aa33aSEmmanuel Vadot interrupts = <GIC_SPI 449 IRQ_TYPE_EDGE_RISING>; 182cb7aa33aSEmmanuel Vadot label = "modem"; 183cb7aa33aSEmmanuel Vadot qcom,remote-pid = <1>; 184cb7aa33aSEmmanuel Vadot mboxes = <&apss_shared 12>; 185cb7aa33aSEmmanuel Vadot }; 186cb7aa33aSEmmanuel Vadot }; 187