1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
4 $id: http://devicetree.org/schemas/remoteproc/qcom,wcnss-pil.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Qualcomm WCNSS Peripheral Image Loader
10 - Bjorn Andersson <andersson@kernel.org>
13 This document defines the binding for a component that loads and boots
14 firmware on the Qualcomm WCNSS core.
19 Append "qcom,pronto" if the device is actually pronto, and not riva
27 - const: qcom,riva-pil
32 The base address and size of the CCU, DXE and PMU register blocks
54 $ref: /schemas/types.yaml#/definitions/string
56 Relative firmware image path for the WCNSS core. Defaults to
61 PX regulator to be held on behalf of the booting of the WCNSS core
65 MX regulator to be held on behalf of the booting of the WCNSS core.
69 CX regulator to be held on behalf of the booting of the WCNSS core.
80 $ref: /schemas/types.yaml#/definitions/phandle-array
82 States used by the AP to signal the WCNSS core that it should shutdown
84 - description: Stop the modem
86 qcom,smem-state-names:
87 description: The names of the state bits used for SMP2P output
93 description: reserved-memory for the WCNSS core
96 $ref: /schemas/remoteproc/qcom,smd-edge.yaml#
98 Qualcomm Shared Memory subnode which represents communication edge,
99 channels and devices related to the ADSP.
104 The iris subnode of the WCNSS PIL is used to describe the attached RF module
105 and its resource dependencies.
118 - description: XO clock
119 - description: RF clock
129 Reference to the regulator to be held on behalf of the booting WCNSS
134 Reference to the regulator to be held on behalf of the booting WCNSS
139 Reference to the regulator to be held on behalf of the booting WCNSS
144 Reference to the regulator to be held on behalf of the booting WCNSS
156 additionalProperties: false
169 additionalProperties: false
193 description: Deprecated for qcom,pronto-v1/2-pil
197 description: Deprecated for qcom,pronto-v1/2-pil
224 #include <dt-bindings/interrupt-controller/arm-gic.h>
225 #include <dt-bindings/clock/qcom,rpmcc.h>
226 #include <dt-bindings/power/qcom-rpmpd.h>
228 compatible = "qcom,pronto-v2-pil", "qcom,pronto";
229 reg = <0x0a204000 0x2000>, <0x0a202000 0x1000>, <0x0a21b000 0x3000>;
230 reg-names = "ccu", "dxe", "pmu";
232 interrupts-extended = <&intc GIC_SPI 149 IRQ_TYPE_EDGE_RISING>,
233 <&wcnss_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
234 <&wcnss_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
235 <&wcnss_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
236 <&wcnss_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
237 interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
239 power-domains = <&rpmpd MSM8916_VDDCX>, <&rpmpd MSM8916_VDDMX>;
240 power-domain-names = "cx", "mx";
242 vddpx-supply = <&pm8916_l7>;
244 qcom,smem-states = <&wcnss_smp2p_out 0>;
245 qcom,smem-state-names = "stop";
247 memory-region = <&wcnss_region>;
249 pinctrl-names = "default";
250 pinctrl-0 = <&wcnss_pin_a>;
253 compatible = "qcom,wcn3620";
254 vddxo-supply = <&pm8916_l7>;
255 vddrfa-supply = <&pm8916_s3>;
256 vddpa-supply = <&pm8916_l9>;
257 vdddig-supply = <&pm8916_l5>;
259 clocks = <&rpmcc RPM_SMD_RF_CLK2>;
264 interrupts = <GIC_SPI 142 IRQ_TYPE_EDGE_RISING>;
266 qcom,ipc = <&apcs 8 17>;
268 qcom,remote-pid = <4>;
273 compatible = "qcom,wcnss";
274 qcom,smd-channels = "WCNSS_CTRL";
276 qcom,mmio = <&pronto>;
279 compatible = "qcom,wcnss-bt";
283 compatible = "qcom,wcnss-wlan";
285 interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>,
286 <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>;
287 interrupt-names = "tx", "rx";
289 qcom,smem-states = <&apps_smsm 10>, <&apps_smsm 9>;
290 qcom,smem-state-names = "tx-enable", "tx-rings-empty";