1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Cl 1 # SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/remoteproc/ 4 $id: http://devicetree.org/schemas/remoteproc/qcom,sm8550-pas.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Qualcomm SM8550 Peripheral Authenticati 7 title: Qualcomm SM8550 Peripheral Authentication Service 8 8 9 maintainers: 9 maintainers: 10 - Manivannan Sadhasivam <manivannan.sadhasiva 10 - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> 11 11 12 description: 12 description: 13 Qualcomm SM8550 SoC Peripheral Authenticatio 13 Qualcomm SM8550 SoC Peripheral Authentication Service loads and boots firmware 14 on the Qualcomm DSP Hexagon cores. 14 on the Qualcomm DSP Hexagon cores. 15 15 16 properties: 16 properties: 17 compatible: 17 compatible: 18 enum: 18 enum: 19 - qcom,sdx75-mpss-pas << 20 - qcom,sm8550-adsp-pas 19 - qcom,sm8550-adsp-pas 21 - qcom,sm8550-cdsp-pas 20 - qcom,sm8550-cdsp-pas 22 - qcom,sm8550-mpss-pas 21 - qcom,sm8550-mpss-pas 23 - qcom,sm8650-adsp-pas << 24 - qcom,sm8650-cdsp-pas << 25 - qcom,sm8650-mpss-pas << 26 - qcom,x1e80100-adsp-pas << 27 - qcom,x1e80100-cdsp-pas << 28 22 29 reg: 23 reg: 30 maxItems: 1 24 maxItems: 1 31 25 32 clocks: 26 clocks: 33 items: 27 items: 34 - description: XO clock 28 - description: XO clock 35 29 36 clock-names: 30 clock-names: 37 items: 31 items: 38 - const: xo 32 - const: xo 39 33 40 qcom,qmp: 34 qcom,qmp: 41 $ref: /schemas/types.yaml#/definitions/pha 35 $ref: /schemas/types.yaml#/definitions/phandle 42 description: Reference to the AOSS side-ch 36 description: Reference to the AOSS side-channel message RAM. 43 37 44 smd-edge: false 38 smd-edge: false 45 39 46 firmware-name: 40 firmware-name: 47 $ref: /schemas/types.yaml#/definitions/str 41 $ref: /schemas/types.yaml#/definitions/string-array 48 items: 42 items: 49 - description: Firmware name of the Hexa 43 - description: Firmware name of the Hexagon core 50 - description: Firmware name of the Hexa 44 - description: Firmware name of the Hexagon Devicetree 51 45 52 memory-region: 46 memory-region: 53 minItems: 2 47 minItems: 2 54 items: 48 items: 55 - description: Memory region for main Fi 49 - description: Memory region for main Firmware authentication 56 - description: Memory region for Devicet 50 - description: Memory region for Devicetree Firmware authentication 57 - description: DSM Memory region 51 - description: DSM Memory region 58 - description: DSM Memory region 2 << 59 - description: Memory region for Qlink L << 60 52 61 required: 53 required: 62 - compatible 54 - compatible 63 - reg 55 - reg 64 - memory-region << 65 56 66 allOf: 57 allOf: 67 - $ref: /schemas/remoteproc/qcom,pas-common. 58 - $ref: /schemas/remoteproc/qcom,pas-common.yaml# 68 - if: 59 - if: 69 properties: 60 properties: 70 compatible: 61 compatible: 71 enum: 62 enum: 72 - qcom,sm8550-adsp-pas 63 - qcom,sm8550-adsp-pas 73 - qcom,sm8550-cdsp-pas 64 - qcom,sm8550-cdsp-pas 74 - qcom,sm8650-adsp-pas << 75 - qcom,x1e80100-adsp-pas << 76 - qcom,x1e80100-cdsp-pas << 77 then: 65 then: 78 properties: 66 properties: 79 interrupts: 67 interrupts: 80 maxItems: 5 68 maxItems: 5 81 interrupt-names: 69 interrupt-names: 82 maxItems: 5 70 maxItems: 5 83 memory-region: 71 memory-region: 84 maxItems: 2 72 maxItems: 2 85 - if: !! 73 else: 86 properties: << 87 compatible: << 88 enum: << 89 - qcom,sm8650-cdsp-pas << 90 then: << 91 properties: << 92 interrupts: << 93 maxItems: 5 << 94 interrupt-names: << 95 maxItems: 5 << 96 memory-region: << 97 minItems: 3 << 98 maxItems: 3 << 99 - if: << 100 properties: << 101 compatible: << 102 enum: << 103 - qcom,sm8550-mpss-pas << 104 then: << 105 properties: 74 properties: 106 interrupts: 75 interrupts: 107 minItems: 6 76 minItems: 6 108 interrupt-names: 77 interrupt-names: 109 minItems: 6 78 minItems: 6 110 memory-region: 79 memory-region: 111 minItems: 3 80 minItems: 3 112 maxItems: 3 << 113 - if: << 114 properties: << 115 compatible: << 116 enum: << 117 - qcom,sdx75-mpss-pas << 118 - qcom,sm8650-mpss-pas << 119 then: << 120 properties: << 121 interrupts: << 122 minItems: 6 << 123 interrupt-names: << 124 minItems: 6 << 125 memory-region: << 126 minItems: 5 << 127 maxItems: 5 << 128 81 129 - if: 82 - if: 130 properties: 83 properties: 131 compatible: 84 compatible: 132 enum: 85 enum: 133 - qcom,sm8550-adsp-pas 86 - qcom,sm8550-adsp-pas 134 - qcom,sm8650-adsp-pas << 135 - qcom,x1e80100-adsp-pas << 136 then: 87 then: 137 properties: 88 properties: 138 power-domains: 89 power-domains: 139 items: 90 items: 140 - description: LCX power domain 91 - description: LCX power domain 141 - description: LMX power domain 92 - description: LMX power domain 142 power-domain-names: 93 power-domain-names: 143 items: 94 items: 144 - const: lcx 95 - const: lcx 145 - const: lmx 96 - const: lmx 146 97 147 - if: 98 - if: 148 properties: 99 properties: 149 compatible: 100 compatible: 150 enum: 101 enum: 151 - qcom,sdx75-mpss-pas << 152 - qcom,sm8550-mpss-pas 102 - qcom,sm8550-mpss-pas 153 - qcom,sm8650-mpss-pas << 154 then: 103 then: 155 properties: 104 properties: 156 power-domains: 105 power-domains: 157 items: 106 items: 158 - description: CX power domain 107 - description: CX power domain 159 - description: MSS power domain 108 - description: MSS power domain 160 power-domain-names: 109 power-domain-names: 161 items: 110 items: 162 - const: cx 111 - const: cx 163 - const: mss 112 - const: mss 164 - if: 113 - if: 165 properties: 114 properties: 166 compatible: 115 compatible: 167 enum: 116 enum: 168 - qcom,sm8550-cdsp-pas 117 - qcom,sm8550-cdsp-pas 169 - qcom,sm8650-cdsp-pas << 170 - qcom,x1e80100-cdsp-pas << 171 then: 118 then: 172 properties: 119 properties: 173 power-domains: 120 power-domains: 174 items: 121 items: 175 - description: CX power domain 122 - description: CX power domain 176 - description: MXC power domain 123 - description: MXC power domain 177 - description: NSP power domain 124 - description: NSP power domain 178 power-domain-names: 125 power-domain-names: 179 items: 126 items: 180 - const: cx 127 - const: cx 181 - const: mxc 128 - const: mxc 182 - const: nsp 129 - const: nsp 183 130 184 unevaluatedProperties: false 131 unevaluatedProperties: false 185 132 186 examples: 133 examples: 187 - | 134 - | 188 #include <dt-bindings/clock/qcom,rpmh.h> 135 #include <dt-bindings/clock/qcom,rpmh.h> 189 #include <dt-bindings/interrupt-controller 136 #include <dt-bindings/interrupt-controller/irq.h> 190 #include <dt-bindings/mailbox/qcom-ipcc.h> 137 #include <dt-bindings/mailbox/qcom-ipcc.h> 191 138 192 remoteproc@30000000 { 139 remoteproc@30000000 { 193 compatible = "qcom,sm8550-adsp-pas"; 140 compatible = "qcom,sm8550-adsp-pas"; 194 reg = <0x030000000 0x100>; 141 reg = <0x030000000 0x100>; 195 142 196 clocks = <&rpmhcc RPMH_CXO_CLK>; 143 clocks = <&rpmhcc RPMH_CXO_CLK>; 197 clock-names = "xo"; 144 clock-names = "xo"; 198 145 199 interrupts-extended = <&pdc 6 IRQ_TYPE 146 interrupts-extended = <&pdc 6 IRQ_TYPE_EDGE_RISING>, 200 <&smp2p_adsp_in 147 <&smp2p_adsp_in 0 IRQ_TYPE_EDGE_RISING>, 201 <&smp2p_adsp_in 148 <&smp2p_adsp_in 1 IRQ_TYPE_EDGE_RISING>, 202 <&smp2p_adsp_in 149 <&smp2p_adsp_in 2 IRQ_TYPE_EDGE_RISING>, 203 <&smp2p_adsp_in 150 <&smp2p_adsp_in 3 IRQ_TYPE_EDGE_RISING>; 204 interrupt-names = "wdog", "fatal", "re 151 interrupt-names = "wdog", "fatal", "ready", 205 "handover", "stop-ac 152 "handover", "stop-ack"; 206 153 207 memory-region = <&adsp_mem>, <&dtb_ads 154 memory-region = <&adsp_mem>, <&dtb_adsp_mem>; 208 155 209 firmware-name = "qcom/sm8550/adsp.mbn" 156 firmware-name = "qcom/sm8550/adsp.mbn", 210 "qcom/sm8550/adsp_dtb. 157 "qcom/sm8550/adsp_dtb.mbn"; 211 158 212 power-domains = <&rpmhpd_sm8550_lcx>, 159 power-domains = <&rpmhpd_sm8550_lcx>, 213 <&rpmhpd_sm8550_lmx>; 160 <&rpmhpd_sm8550_lmx>; 214 power-domain-names = "lcx", "lmx"; 161 power-domain-names = "lcx", "lmx"; 215 162 216 qcom,qmp = <&aoss_qmp>; 163 qcom,qmp = <&aoss_qmp>; 217 qcom,smem-states = <&smp2p_adsp_out 0> 164 qcom,smem-states = <&smp2p_adsp_out 0>; 218 qcom,smem-state-names = "stop"; 165 qcom,smem-state-names = "stop"; 219 166 220 glink-edge { 167 glink-edge { 221 interrupts-extended = <&ipcc IPCC_ 168 interrupts-extended = <&ipcc IPCC_CLIENT_LPASS 222 IPCC_ 169 IPCC_MPROC_SIGNAL_GLINK_QMP 223 IRQ_T 170 IRQ_TYPE_EDGE_RISING>; 224 mboxes = <&ipcc IPCC_CLIENT_LPASS 171 mboxes = <&ipcc IPCC_CLIENT_LPASS IPCC_MPROC_SIGNAL_GLINK_QMP>; 225 172 226 label = "lpass"; 173 label = "lpass"; 227 qcom,remote-pid = <2>; 174 qcom,remote-pid = <2>; 228 175 229 /* ... */ 176 /* ... */ 230 }; 177 }; 231 }; 178 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.