1 Qualcomm ADSP Peripheral Image Loader
2
3 This document defines the binding for a component that loads and boots firmware
4 on the Qualcomm ADSP Hexagon core.
5
6 - compatible:
7 Usage: required
8 Value type: <string>
9 Definition: must be one of:
10 "qcom,msm8974-adsp-pil"
11 "qcom,msm8996-adsp-pil"
12 "qcom,msm8996-slpi-pil"
13 "qcom,msm8998-adsp-pas"
14 "qcom,msm8998-slpi-pas"
15 "qcom,qcs404-adsp-pas"
16 "qcom,qcs404-cdsp-pas"
17 "qcom,qcs404-wcss-pas"
18 "qcom,sc7180-mpss-pas"
19 "qcom,sdm845-adsp-pas"
20 "qcom,sdm845-cdsp-pas"
21 "qcom,sdx55-mpss-pas"
22 "qcom,sm8150-adsp-pas"
23 "qcom,sm8150-cdsp-pas"
24 "qcom,sm8150-mpss-pas"
25 "qcom,sm8150-slpi-pas"
26 "qcom,sm8250-adsp-pas"
27 "qcom,sm8250-cdsp-pas"
28 "qcom,sm8250-slpi-pas"
29 "qcom,sm8350-adsp-pas"
30 "qcom,sm8350-cdsp-pas"
31 "qcom,sm8350-slpi-pas"
32 "qcom,sm8350-mpss-pas"
33
34 - interrupts-extended:
35 Usage: required
36 Value type: <prop-encoded-array>
37 Definition: reference to the interrupts that match interrupt-names
38
39 - interrupt-names:
40 Usage: required
41 Value type: <stringlist>
42 Definition: The interrupts needed depends on the compatible
43 string:
44 qcom,msm8974-adsp-pil:
45 qcom,msm8996-adsp-pil:
46 qcom,msm8996-slpi-pil:
47 qcom,msm8998-adsp-pas:
48 qcom,msm8998-slpi-pas:
49 qcom,qcs404-adsp-pas:
50 qcom,qcs404-cdsp-pas:
51 qcom,sdm845-adsp-pas:
52 qcom,sdm845-cdsp-pas:
53 qcom,sm8150-adsp-pas:
54 qcom,sm8150-cdsp-pas:
55 qcom,sm8150-slpi-pas:
56 qcom,sm8250-adsp-pas:
57 qcom,sm8250-cdsp-pas:
58 qcom,sm8250-slpi-pas:
59 qcom,sm8350-adsp-pas:
60 qcom,sm8350-cdsp-pas:
61 qcom,sm8350-slpi-pas:
62 must be "wdog", "fatal", "ready", "handover", "stop-ack"
63 qcom,qcs404-wcss-pas:
64 qcom,sc7180-mpss-pas:
65 qcom,sdx55-mpss-pas:
66 qcom,sm8150-mpss-pas:
67 qcom,sm8350-mpss-pas:
68 must be "wdog", "fatal", "ready", "handover", "stop-ack",
69 "shutdown-ack"
70
71 - firmware-name:
72 Usage: optional
73 Value type: <string>
74 Definition: must list the relative firmware image path for the
75 Hexagon Core.
76
77 - clocks:
78 Usage: required
79 Value type: <prop-encoded-array>
80 Definition: reference to the xo clock and optionally aggre2 clock to be
81 held on behalf of the booting Hexagon core
82
83 - clock-names:
84 Usage: required
85 Value type: <stringlist>
86 Definition: must be "xo" and optionally include "aggre2"
87
88 - cx-supply:
89 Usage: required
90 Value type: <phandle>
91 Definition: reference to the regulator to be held on behalf of the
92 booting Hexagon core
93
94 - px-supply:
95 Usage: required
96 Value type: <phandle>
97 Definition: reference to the px regulator to be held on behalf of the
98 booting Hexagon core
99
100 - power-domains:
101 Usage: required
102 Value type: <phandle>
103 Definition: reference to power-domains that match the power-domain-names
104
105 - power-domain-names:
106 Usage: required
107 Value type: <stringlist>
108 Definition: The power-domains needed depend on the compatible string:
109 qcom,msm8974-adsp-pil:
110 qcom,msm8996-adsp-pil:
111 qcom,msm8998-adsp-pas:
112 must be "cx"
113 qcom,msm8996-slpi-pil:
114 must be "ss_cx"
115 qcom,msm8998-slpi-pas:
116 must be "ssc_cx"
117 qcom,qcs404-adsp-pas:
118 must be "lpi_cx"
119 qcom,qcs404-cdsp-pas:
120 qcom,qcs404-wcss-pas:
121 must be "mx"
122 qcom,sdm845-adsp-pas:
123 qcom,sdm845-cdsp-pas:
124 qcom,sm8150-adsp-pas:
125 qcom,sm8150-cdsp-pas:
126 qcom,sm8250-cdsp-pas:
127 qcom,sm8350-cdsp-pas:
128 must be "cx", "load_state"
129 qcom,sc7180-mpss-pas:
130 qcom,sm8150-mpss-pas:
131 qcom,sm8350-mpss-pas:
132 must be "cx", "load_state", "mss"
133 qcom,sdx55-mpss-pas:
134 must be "cx", "mss"
135 qcom,sm8250-adsp-pas:
136 qcom,sm8350-adsp-pas:
137 qcom,sm8150-slpi-pas:
138 qcom,sm8250-slpi-pas:
139 qcom,sm8350-slpi-pas:
140 must be "lcx", "lmx", "load_state"
141
142 - memory-region:
143 Usage: required
144 Value type: <phandle>
145 Definition: reference to the reserved-memory for the ADSP
146
147 - qcom,smem-states:
148 Usage: required
149 Value type: <phandle>
150 Definition: reference to the smem state for requesting the ADSP to
151 shut down
152
153 - qcom,smem-state-names:
154 Usage: required
155 Value type: <stringlist>
156 Definition: must be "stop"
157
158
159 = SUBNODES
160 The adsp node may have an subnode named either "smd-edge" or "glink-edge" that
161 describes the communication edge, channels and devices related to the ADSP.
162 See ../soc/qcom/qcom,smd.txt and ../soc/qcom/qcom,glink.txt for details on how
163 to describe these.
164
165
166 = EXAMPLE
167 The following example describes the resources needed to boot control the
168 ADSP, as it is found on MSM8974 boards.
169
170 adsp {
171 compatible = "qcom,msm8974-adsp-pil";
172
173 interrupts-extended = <&intc 0 162 IRQ_TYPE_EDGE_RISING>,
174 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
175 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
176 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
177 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
178 interrupt-names = "wdog",
179 "fatal",
180 "ready",
181 "handover",
182 "stop-ack";
183
184 clocks = <&rpmcc RPM_CXO_CLK>;
185 clock-names = "xo";
186
187 cx-supply = <&pm8841_s2>;
188
189 memory-region = <&adsp_region>;
190
191 qcom,smem-states = <&adsp_smp2p_out 0>;
192 qcom,smem-state-names = "stop";
193
194 smd-edge {
195 interrupts = <0 156 IRQ_TYPE_EDGE_RISING>;
196
197 qcom,ipc = <&apcs 8 8>;
198 qcom,smd-edge = <1>;
199 };
200 };
201
202 The following example describes the resources needed to boot control the
203 SLPI, as it is found on MSM8996 boards.
204
205 slpi {
206 compatible = "qcom,msm8996-slpi-pil";
207 interrupts-extended = <&intc 0 390 IRQ_TYPE_EDGE_RISING>,
208 <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>,
209 <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>,
210 <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>,
211 <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>;
212 interrupt-names = "wdog",
213 "fatal",
214 "ready",
215 "handover",
216 "stop-ack";
217
218 clocks = <&rpmcc MSM8996_RPM_SMD_XO_CLK_SRC>,
219 <&rpmcc MSM8996_RPM_SMD_AGGR2_NOC_CLK>;
220 clock-names = "xo", "aggre2";
221
222 cx-supply = <&pm8994_l26>;
223 px-supply = <&pm8994_lvs2>;
224
225 memory-region = <&slpi_region>;
226 qcom,smem-states = <&slpi_smp2p_out 0>;
227 qcom,smem-state-names = "stop";
228 };
Cache object: 0f9b548b495b368273577c963772d5fc
|