Commit | Line | Data |
---|---|---|
2aec37c6 RV |
1 | /dts-v1/; |
2 | ||
bf7f6b04 | 3 | #include <dt-bindings/interrupt-controller/irq.h> |
3933d267 | 4 | #include <dt-bindings/clock/qcom,gcc-msm8974.h> |
bf7f6b04 | 5 | #include "skeleton.dtsi" |
3933d267 | 6 | |
2aec37c6 RV |
7 | / { |
8 | model = "Qualcomm MSM8974"; | |
9 | compatible = "qcom,msm8974"; | |
10 | interrupt-parent = <&intc>; | |
11 | ||
6297c4b2 BA |
12 | reserved-memory { |
13 | #address-cells = <1>; | |
14 | #size-cells = <1>; | |
15 | ranges; | |
16 | ||
17 | smem_region: smem@fa00000 { | |
18 | reg = <0xfa00000 0x200000>; | |
19 | no-map; | |
20 | }; | |
21 | }; | |
22 | ||
2ab27991 RV |
23 | cpus { |
24 | #address-cells = <1>; | |
25 | #size-cells = <0>; | |
26 | interrupts = <1 9 0xf04>; | |
2ab27991 RV |
27 | |
28 | cpu@0 { | |
ba08220a KG |
29 | compatible = "qcom,krait"; |
30 | enable-method = "qcom,kpss-acc-v2"; | |
2ab27991 RV |
31 | device_type = "cpu"; |
32 | reg = <0>; | |
33 | next-level-cache = <&L2>; | |
34 | qcom,acc = <&acc0>; | |
8c76a638 | 35 | qcom,saw = <&saw0>; |
d596d620 | 36 | cpu-idle-states = <&CPU_SPC>; |
2ab27991 RV |
37 | }; |
38 | ||
39 | cpu@1 { | |
ba08220a KG |
40 | compatible = "qcom,krait"; |
41 | enable-method = "qcom,kpss-acc-v2"; | |
2ab27991 RV |
42 | device_type = "cpu"; |
43 | reg = <1>; | |
44 | next-level-cache = <&L2>; | |
45 | qcom,acc = <&acc1>; | |
8c76a638 | 46 | qcom,saw = <&saw1>; |
d596d620 | 47 | cpu-idle-states = <&CPU_SPC>; |
2ab27991 RV |
48 | }; |
49 | ||
50 | cpu@2 { | |
ba08220a KG |
51 | compatible = "qcom,krait"; |
52 | enable-method = "qcom,kpss-acc-v2"; | |
2ab27991 RV |
53 | device_type = "cpu"; |
54 | reg = <2>; | |
55 | next-level-cache = <&L2>; | |
56 | qcom,acc = <&acc2>; | |
8c76a638 | 57 | qcom,saw = <&saw2>; |
d596d620 | 58 | cpu-idle-states = <&CPU_SPC>; |
2ab27991 RV |
59 | }; |
60 | ||
61 | cpu@3 { | |
ba08220a KG |
62 | compatible = "qcom,krait"; |
63 | enable-method = "qcom,kpss-acc-v2"; | |
2ab27991 RV |
64 | device_type = "cpu"; |
65 | reg = <3>; | |
66 | next-level-cache = <&L2>; | |
67 | qcom,acc = <&acc3>; | |
8c76a638 | 68 | qcom,saw = <&saw3>; |
d596d620 | 69 | cpu-idle-states = <&CPU_SPC>; |
2ab27991 RV |
70 | }; |
71 | ||
72 | L2: l2-cache { | |
73 | compatible = "cache"; | |
74 | cache-level = <2>; | |
2ab27991 RV |
75 | qcom,saw = <&saw_l2>; |
76 | }; | |
d596d620 LI |
77 | |
78 | idle-states { | |
79 | CPU_SPC: spc { | |
80 | compatible = "qcom,idle-state-spc", | |
81 | "arm,idle-state"; | |
82 | entry-latency-us = <150>; | |
83 | exit-latency-us = <200>; | |
84 | min-residency-us = <2000>; | |
85 | }; | |
86 | }; | |
2ab27991 RV |
87 | }; |
88 | ||
3bff5474 SB |
89 | cpu-pmu { |
90 | compatible = "qcom,krait-pmu"; | |
91 | interrupts = <1 7 0xf04>; | |
92 | }; | |
93 | ||
ba08220a KG |
94 | timer { |
95 | compatible = "arm,armv7-timer"; | |
96 | interrupts = <1 2 0xf08>, | |
97 | <1 3 0xf08>, | |
98 | <1 4 0xf08>, | |
99 | <1 1 0xf08>; | |
100 | clock-frequency = <19200000>; | |
101 | }; | |
102 | ||
2aec37c6 RV |
103 | soc: soc { |
104 | #address-cells = <1>; | |
105 | #size-cells = <1>; | |
106 | ranges; | |
107 | compatible = "simple-bus"; | |
108 | ||
109 | intc: interrupt-controller@f9000000 { | |
110 | compatible = "qcom,msm-qgic2"; | |
111 | interrupt-controller; | |
112 | #interrupt-cells = <3>; | |
113 | reg = <0xf9000000 0x1000>, | |
114 | <0xf9002000 0x1000>; | |
115 | }; | |
116 | ||
45b0ef05 BA |
117 | apcs: syscon@f9011000 { |
118 | compatible = "syscon"; | |
119 | reg = <0xf9011000 0x1000>; | |
120 | }; | |
121 | ||
47c5a5d6 SB |
122 | timer@f9020000 { |
123 | #address-cells = <1>; | |
124 | #size-cells = <1>; | |
125 | ranges; | |
126 | compatible = "arm,armv7-timer-mem"; | |
127 | reg = <0xf9020000 0x1000>; | |
128 | clock-frequency = <19200000>; | |
129 | ||
130 | frame@f9021000 { | |
131 | frame-number = <0>; | |
132 | interrupts = <0 8 0x4>, | |
133 | <0 7 0x4>; | |
134 | reg = <0xf9021000 0x1000>, | |
135 | <0xf9022000 0x1000>; | |
136 | }; | |
137 | ||
138 | frame@f9023000 { | |
139 | frame-number = <1>; | |
140 | interrupts = <0 9 0x4>; | |
141 | reg = <0xf9023000 0x1000>; | |
142 | status = "disabled"; | |
143 | }; | |
144 | ||
145 | frame@f9024000 { | |
146 | frame-number = <2>; | |
147 | interrupts = <0 10 0x4>; | |
148 | reg = <0xf9024000 0x1000>; | |
149 | status = "disabled"; | |
150 | }; | |
151 | ||
152 | frame@f9025000 { | |
153 | frame-number = <3>; | |
154 | interrupts = <0 11 0x4>; | |
155 | reg = <0xf9025000 0x1000>; | |
156 | status = "disabled"; | |
157 | }; | |
158 | ||
159 | frame@f9026000 { | |
160 | frame-number = <4>; | |
161 | interrupts = <0 12 0x4>; | |
162 | reg = <0xf9026000 0x1000>; | |
163 | status = "disabled"; | |
164 | }; | |
165 | ||
166 | frame@f9027000 { | |
167 | frame-number = <5>; | |
168 | interrupts = <0 13 0x4>; | |
169 | reg = <0xf9027000 0x1000>; | |
170 | status = "disabled"; | |
171 | }; | |
172 | ||
173 | frame@f9028000 { | |
174 | frame-number = <6>; | |
175 | interrupts = <0 14 0x4>; | |
176 | reg = <0xf9028000 0x1000>; | |
177 | status = "disabled"; | |
178 | }; | |
179 | }; | |
180 | ||
8c76a638 LI |
181 | saw0: power-controller@f9089000 { |
182 | compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2"; | |
183 | reg = <0xf9089000 0x1000>, <0xf9009000 0x1000>; | |
184 | }; | |
185 | ||
186 | saw1: power-controller@f9099000 { | |
187 | compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2"; | |
188 | reg = <0xf9099000 0x1000>, <0xf9009000 0x1000>; | |
189 | }; | |
190 | ||
191 | saw2: power-controller@f90a9000 { | |
192 | compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2"; | |
193 | reg = <0xf90a9000 0x1000>, <0xf9009000 0x1000>; | |
194 | }; | |
195 | ||
196 | saw3: power-controller@f90b9000 { | |
197 | compatible = "qcom,msm8974-saw2-v2.1-cpu", "qcom,saw2"; | |
198 | reg = <0xf90b9000 0x1000>, <0xf9009000 0x1000>; | |
199 | }; | |
200 | ||
201 | saw_l2: power-controller@f9012000 { | |
2ab27991 RV |
202 | compatible = "qcom,saw2"; |
203 | reg = <0xf9012000 0x1000>; | |
204 | regulator; | |
205 | }; | |
206 | ||
207 | acc0: clock-controller@f9088000 { | |
208 | compatible = "qcom,kpss-acc-v2"; | |
209 | reg = <0xf9088000 0x1000>, <0xf9008000 0x1000>; | |
210 | }; | |
211 | ||
212 | acc1: clock-controller@f9098000 { | |
213 | compatible = "qcom,kpss-acc-v2"; | |
214 | reg = <0xf9098000 0x1000>, <0xf9008000 0x1000>; | |
215 | }; | |
216 | ||
217 | acc2: clock-controller@f90a8000 { | |
218 | compatible = "qcom,kpss-acc-v2"; | |
219 | reg = <0xf90a8000 0x1000>, <0xf9008000 0x1000>; | |
220 | }; | |
221 | ||
222 | acc3: clock-controller@f90b8000 { | |
223 | compatible = "qcom,kpss-acc-v2"; | |
224 | reg = <0xf90b8000 0x1000>, <0xf9008000 0x1000>; | |
225 | }; | |
226 | ||
74e848f6 SB |
227 | restart@fc4ab000 { |
228 | compatible = "qcom,pshold"; | |
229 | reg = <0xfc4ab000 0x4>; | |
230 | }; | |
3933d267 SB |
231 | |
232 | gcc: clock-controller@fc400000 { | |
233 | compatible = "qcom,gcc-msm8974"; | |
234 | #clock-cells = <1>; | |
235 | #reset-cells = <1>; | |
236 | reg = <0xfc400000 0x4000>; | |
237 | }; | |
238 | ||
b4e745e1 BA |
239 | tcsr_mutex_block: syscon@fd484000 { |
240 | compatible = "syscon"; | |
241 | reg = <0xfd484000 0x2000>; | |
242 | }; | |
243 | ||
3933d267 SB |
244 | mmcc: clock-controller@fd8c0000 { |
245 | compatible = "qcom,mmcc-msm8974"; | |
246 | #clock-cells = <1>; | |
247 | #reset-cells = <1>; | |
248 | reg = <0xfd8c0000 0x6000>; | |
249 | }; | |
250 | ||
b4e745e1 BA |
251 | tcsr_mutex: tcsr-mutex { |
252 | compatible = "qcom,tcsr-mutex"; | |
253 | syscon = <&tcsr_mutex_block 0 0x80>; | |
254 | ||
255 | #hwlock-cells = <1>; | |
256 | }; | |
257 | ||
6297c4b2 BA |
258 | smem@fa00000 { |
259 | compatible = "qcom,smem"; | |
260 | ||
261 | memory-region = <&smem_region>; | |
262 | reg = <0xfc428000 0x4000>; | |
263 | ||
264 | hwlocks = <&tcsr_mutex 3>; | |
265 | }; | |
266 | ||
10bfcfea | 267 | blsp1_uart2: serial@f991e000 { |
3933d267 SB |
268 | compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; |
269 | reg = <0xf991e000 0x1000>; | |
270 | interrupts = <0 108 0x0>; | |
271 | clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; | |
272 | clock-names = "core", "iface"; | |
ba08220a | 273 | status = "disabled"; |
3933d267 | 274 | }; |
19f4f8c1 | 275 | |
3e944c76 GD |
276 | sdhci@f9824900 { |
277 | compatible = "qcom,sdhci-msm-v4"; | |
278 | reg = <0xf9824900 0x11c>, <0xf9824000 0x800>; | |
279 | reg-names = "hc_mem", "core_mem"; | |
280 | interrupts = <0 123 0>, <0 138 0>; | |
281 | interrupt-names = "hc_irq", "pwr_irq"; | |
282 | clocks = <&gcc GCC_SDCC1_APPS_CLK>, <&gcc GCC_SDCC1_AHB_CLK>; | |
283 | clock-names = "core", "iface"; | |
284 | status = "disabled"; | |
285 | }; | |
286 | ||
287 | sdhci@f98a4900 { | |
288 | compatible = "qcom,sdhci-msm-v4"; | |
289 | reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>; | |
290 | reg-names = "hc_mem", "core_mem"; | |
291 | interrupts = <0 125 0>, <0 221 0>; | |
292 | interrupt-names = "hc_irq", "pwr_irq"; | |
293 | clocks = <&gcc GCC_SDCC2_APPS_CLK>, <&gcc GCC_SDCC2_AHB_CLK>; | |
294 | clock-names = "core", "iface"; | |
295 | status = "disabled"; | |
296 | }; | |
297 | ||
19f4f8c1 SV |
298 | rng@f9bff000 { |
299 | compatible = "qcom,prng"; | |
300 | reg = <0xf9bff000 0x200>; | |
301 | clocks = <&gcc GCC_PRNG_AHB_CLK>; | |
302 | clock-names = "core"; | |
303 | }; | |
7d7db8db II |
304 | |
305 | msmgpio: pinctrl@fd510000 { | |
306 | compatible = "qcom,msm8974-pinctrl"; | |
307 | reg = <0xfd510000 0x4000>; | |
308 | gpio-controller; | |
309 | #gpio-cells = <2>; | |
310 | interrupt-controller; | |
311 | #interrupt-cells = <2>; | |
312 | interrupts = <0 208 0>; | |
7d7db8db | 313 | }; |
bf7f6b04 | 314 | |
315 | blsp_i2c11: i2c@f9967000 { | |
316 | status = "disable"; | |
317 | compatible = "qcom,i2c-qup-v2.1.1"; | |
318 | reg = <0xf9967000 0x1000>; | |
319 | interrupts = <0 105 IRQ_TYPE_NONE>; | |
320 | clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP2_AHB_CLK>; | |
321 | clock-names = "core", "iface"; | |
322 | #address-cells = <1>; | |
323 | #size-cells = <0>; | |
324 | }; | |
af22e46d II |
325 | |
326 | spmi_bus: spmi@fc4cf000 { | |
327 | compatible = "qcom,spmi-pmic-arb"; | |
328 | reg-names = "core", "intr", "cnfg"; | |
329 | reg = <0xfc4cf000 0x1000>, | |
330 | <0xfc4cb000 0x1000>, | |
331 | <0xfc4ca000 0x1000>; | |
332 | interrupt-names = "periph_irq"; | |
333 | interrupts = <0 190 0>; | |
334 | qcom,ee = <0>; | |
335 | qcom,channel = <0>; | |
336 | #address-cells = <2>; | |
337 | #size-cells = <0>; | |
338 | interrupt-controller; | |
339 | #interrupt-cells = <4>; | |
340 | }; | |
2aec37c6 | 341 | }; |
45b0ef05 BA |
342 | |
343 | smd { | |
344 | compatible = "qcom,smd"; | |
345 | ||
346 | rpm { | |
347 | interrupts = <0 168 1>; | |
348 | qcom,ipc = <&apcs 8 0>; | |
349 | qcom,smd-edge = <15>; | |
350 | ||
351 | rpm_requests { | |
352 | compatible = "qcom,rpm-msm8974"; | |
353 | qcom,smd-channels = "rpm_requests"; | |
354 | ||
355 | pm8841-regulators { | |
356 | compatible = "qcom,rpm-pm8841-regulators"; | |
357 | ||
358 | pm8841_s1: s1 {}; | |
359 | pm8841_s2: s2 {}; | |
360 | pm8841_s3: s3 {}; | |
361 | pm8841_s4: s4 {}; | |
362 | pm8841_s5: s5 {}; | |
363 | pm8841_s6: s6 {}; | |
364 | pm8841_s7: s7 {}; | |
365 | pm8841_s8: s8 {}; | |
366 | }; | |
367 | ||
368 | pm8941-regulators { | |
369 | compatible = "qcom,rpm-pm8941-regulators"; | |
370 | ||
371 | pm8941_s1: s1 {}; | |
372 | pm8941_s2: s2 {}; | |
373 | pm8941_s3: s3 {}; | |
374 | pm8941_5v: s4 {}; | |
375 | ||
376 | pm8941_l1: l1 {}; | |
377 | pm8941_l2: l2 {}; | |
378 | pm8941_l3: l3 {}; | |
379 | pm8941_l4: l4 {}; | |
380 | pm8941_l5: l5 {}; | |
381 | pm8941_l6: l6 {}; | |
382 | pm8941_l7: l7 {}; | |
383 | pm8941_l8: l8 {}; | |
384 | pm8941_l9: l9 {}; | |
385 | pm8941_l10: l10 {}; | |
386 | pm8941_l11: l11 {}; | |
387 | pm8941_l12: l12 {}; | |
388 | pm8941_l13: l13 {}; | |
389 | pm8941_l14: l14 {}; | |
390 | pm8941_l15: l15 {}; | |
391 | pm8941_l16: l16 {}; | |
392 | pm8941_l17: l17 {}; | |
393 | pm8941_l18: l18 {}; | |
394 | pm8941_l19: l19 {}; | |
395 | pm8941_l20: l20 {}; | |
396 | pm8941_l21: l21 {}; | |
397 | pm8941_l22: l22 {}; | |
398 | pm8941_l23: l23 {}; | |
399 | pm8941_l24: l24 {}; | |
400 | ||
401 | pm8941_lvs1: lvs1 {}; | |
402 | pm8941_lvs2: lvs2 {}; | |
403 | pm8941_lvs3: lvs3 {}; | |
404 | ||
405 | pm8941_5vs1: 5vs1 {}; | |
406 | pm8941_5vs2: 5vs2 {}; | |
407 | }; | |
408 | }; | |
409 | }; | |
410 | }; | |
2aec37c6 | 411 | }; |