1 Qualcomm WCNSS Peripheral Image Loader
3 This document defines the binding for a component that loads and boots firmware
4 on the Qualcomm WCNSS core.
9 Definition: must be one of:
16 Value type: <prop-encoded-array>
17 Definition: must specify the base address and size of the CCU, DXE and
22 Value type: <stringlist>
23 Definition: must be "ccu", "dxe", "pmu"
25 - interrupts-extended:
27 Value type: <prop-encoded-array>
28 Definition: must list the watchdog and fatal IRQs and may specify the
29 ready, handover and stop-ack IRQs
33 Value type: <stringlist>
34 Definition: should be "wdog", "fatal", optionally followed by "ready",
35 "handover", "stop-ack"
37 - vddmx-supply: (deprecated for qcom,pronto-v1/2-pil)
38 - vddcx-supply: (deprecated for qcom,pronto-v1/2-pil)
42 Definition: reference to the regulators to be held on behalf of the
43 booting of the WCNSS core
46 Usage: required (for qcom,pronto-v1/2-pil)
48 Definition: reference to the power domains to be held on behalf of the
49 booting of the WCNSS core
52 Usage: required (for qcom,pronto-v1/2-pil)
53 Value type: <stringlist>
54 Definition: must be "cx", "mx"
58 Value type: <prop-encoded-array>
59 Definition: reference to the SMEM state used to indicate to WCNSS that
62 - qcom,smem-state-names:
64 Value type: <stringlist>
65 Definition: should be "stop"
69 Value type: <prop-encoded-array>
70 Definition: reference to reserved-memory node for the remote processor
71 see ../reserved-memory/reserved-memory.txt
74 A required subnode of the WCNSS PIL is used to describe the attached rf module
75 and its resource dependencies. It is described by the following properties:
80 Definition: must be one of:
87 Value type: <prop-encoded-array>
88 Definition: should specify the xo clock and optionally the rf clock
92 Value type: <stringlist>
93 Definition: should be "xo", optionally followed by "rf"
100 Value type: <phandle>
101 Definition: reference to the regulators to be held on behalf of the
102 booting of the WCNSS core
105 The wcnss node can also have an subnode named "smd-edge" that describes the SMD
106 edge, channels and devices related to the WCNSS.
107 See ../soc/qcom/qcom,smd.txt for details on how to describe the SMD edge.
110 The following example describes the resources needed to boot control the WCNSS,
111 with attached WCN3680, as it is commonly found on MSM8974 boards.
114 compatible = "qcom,pronto-v2-pil";
115 reg = <0xfb204000 0x2000>, <0xfb202000 0x1000>, <0xfb21b000 0x3000>;
116 reg-names = "ccu", "dxe", "pmu";
118 interrupts-extended = <&intc 0 149 1>,
119 <&wcnss_smp2p_slave 0 0>,
120 <&wcnss_smp2p_slave 1 0>,
121 <&wcnss_smp2p_slave 2 0>,
122 <&wcnss_smp2p_slave 3 0>;
123 interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack";
125 power-domains = <&rpmpd MSM8974_VDDCX>, <&rpmpd MSM8974_VDDMX>;
126 power-domain-names = "cx", "mx";
128 vddpx-supply = <&pm8941_s3>;
130 qcom,smem-states = <&wcnss_smp2p_out 0>;
131 qcom,smem-state-names = "stop";
133 memory-region = <&wcnss_region>;
135 pinctrl-names = "default";
136 pinctrl-0 = <&wcnss_pin_a>;
139 compatible = "qcom,wcn3680";
141 clocks = <&rpmcc RPM_CXO_CLK_SRC>, <&rpmcc RPM_CXO_A2>;
142 clock-names = "xo", "rf";
144 vddxo-supply = <&pm8941_l6>;
145 vddrfa-supply = <&pm8941_l11>;
146 vddpa-supply = <&pm8941_l19>;
147 vdddig-supply = <&pm8941_s3>;
151 interrupts = <0 142 1>;
153 qcom,ipc = <&apcs 8 17>;
155 qcom,remote-pid = <4>;
160 compatible = "qcom,wcnss";
161 qcom,smd-channels = "WCNSS_CTRL";
163 qcom,mmio = <&pronto>;
166 compatible = "qcom,wcnss-bt";