Commit | Line | Data |
---|---|---|
97fb5e8d | 1 | // SPDX-License-Identifier: GPL-2.0-only |
41dac73e VN |
2 | /* |
3 | * Copyright (c) 2017, The Linux Foundation. All rights reserved. | |
41dac73e VN |
4 | */ |
5 | ||
6 | #include <dt-bindings/interrupt-controller/arm-gic.h> | |
7 | #include <dt-bindings/clock/qcom,gcc-ipq8074.h> | |
8 | ||
9 | / { | |
10 | model = "Qualcomm Technologies, Inc. IPQ8074"; | |
11 | compatible = "qcom,ipq8074"; | |
12 | ||
e8a7fdc5 SM |
13 | clocks { |
14 | sleep_clk: sleep_clk { | |
15 | compatible = "fixed-clock"; | |
f607dd76 | 16 | clock-frequency = <32768>; |
e8a7fdc5 SM |
17 | #clock-cells = <0>; |
18 | }; | |
19 | ||
20 | xo: xo { | |
21 | compatible = "fixed-clock"; | |
22 | clock-frequency = <19200000>; | |
23 | #clock-cells = <0>; | |
24 | }; | |
25 | }; | |
26 | ||
27 | cpus { | |
28 | #address-cells = <0x1>; | |
29 | #size-cells = <0x0>; | |
30 | ||
31 | CPU0: cpu@0 { | |
32 | device_type = "cpu"; | |
33 | compatible = "arm,cortex-a53"; | |
34 | reg = <0x0>; | |
35 | next-level-cache = <&L2_0>; | |
36 | enable-method = "psci"; | |
37 | }; | |
38 | ||
39 | CPU1: cpu@1 { | |
40 | device_type = "cpu"; | |
41 | compatible = "arm,cortex-a53"; | |
42 | enable-method = "psci"; | |
43 | reg = <0x1>; | |
44 | next-level-cache = <&L2_0>; | |
45 | }; | |
46 | ||
47 | CPU2: cpu@2 { | |
48 | device_type = "cpu"; | |
49 | compatible = "arm,cortex-a53"; | |
50 | enable-method = "psci"; | |
51 | reg = <0x2>; | |
52 | next-level-cache = <&L2_0>; | |
53 | }; | |
54 | ||
55 | CPU3: cpu@3 { | |
56 | device_type = "cpu"; | |
57 | compatible = "arm,cortex-a53"; | |
58 | enable-method = "psci"; | |
59 | reg = <0x3>; | |
60 | next-level-cache = <&L2_0>; | |
61 | }; | |
62 | ||
63 | L2_0: l2-cache { | |
64 | compatible = "cache"; | |
65 | cache-level = <0x2>; | |
66 | }; | |
67 | }; | |
68 | ||
69 | pmu { | |
292b1874 | 70 | compatible = "arm,cortex-a53-pmu"; |
e8a7fdc5 SM |
71 | interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
72 | }; | |
73 | ||
74 | psci { | |
75 | compatible = "arm,psci-1.0"; | |
76 | method = "smc"; | |
77 | }; | |
78 | ||
42124b94 RM |
79 | reserved-memory { |
80 | #address-cells = <2>; | |
81 | #size-cells = <2>; | |
82 | ranges; | |
83 | ||
84 | smem@4ab00000 { | |
85 | compatible = "qcom,smem"; | |
86 | reg = <0x0 0x4ab00000 0x0 0x00100000>; | |
87 | no-map; | |
88 | ||
89 | hwlocks = <&tcsr_mutex 0>; | |
90 | }; | |
e4a4fdcf K |
91 | |
92 | memory@4ac00000 { | |
93 | no-map; | |
94 | reg = <0x0 0x4ac00000 0x0 0x00400000>; | |
95 | }; | |
42124b94 RM |
96 | }; |
97 | ||
6df9102f GSP |
98 | firmware { |
99 | scm { | |
100 | compatible = "qcom,scm-ipq8074", "qcom,scm"; | |
101 | }; | |
102 | }; | |
103 | ||
41dac73e VN |
104 | soc: soc { |
105 | #address-cells = <0x1>; | |
106 | #size-cells = <0x1>; | |
107 | ranges = <0 0 0 0xffffffff>; | |
108 | compatible = "simple-bus"; | |
109 | ||
5e09bc51 SM |
110 | ssphy_1: phy@58000 { |
111 | compatible = "qcom,ipq8074-qmp-usb3-phy"; | |
112 | reg = <0x00058000 0x1c4>; | |
5e09bc51 SM |
113 | #address-cells = <1>; |
114 | #size-cells = <1>; | |
115 | ranges; | |
116 | ||
117 | clocks = <&gcc GCC_USB1_AUX_CLK>, | |
118 | <&gcc GCC_USB1_PHY_CFG_AHB_CLK>, | |
119 | <&xo>; | |
120 | clock-names = "aux", "cfg_ahb", "ref"; | |
121 | ||
122 | resets = <&gcc GCC_USB1_PHY_BCR>, | |
123 | <&gcc GCC_USB3PHY_1_PHY_BCR>; | |
124 | reset-names = "phy","common"; | |
125 | status = "disabled"; | |
126 | ||
1351512f | 127 | usb1_ssphy: phy@58200 { |
5e09bc51 SM |
128 | reg = <0x00058200 0x130>, /* Tx */ |
129 | <0x00058400 0x200>, /* Rx */ | |
130 | <0x00058800 0x1f8>, /* PCS */ | |
131 | <0x00058600 0x044>; /* PCS misc*/ | |
132 | #phy-cells = <0>; | |
82d61e19 | 133 | #clock-cells = <1>; |
5e09bc51 SM |
134 | clocks = <&gcc GCC_USB1_PIPE_CLK>; |
135 | clock-names = "pipe0"; | |
136 | clock-output-names = "gcc_usb1_pipe_clk_src"; | |
137 | }; | |
138 | }; | |
139 | ||
140 | qusb_phy_1: phy@59000 { | |
141 | compatible = "qcom,ipq8074-qusb2-phy"; | |
142 | reg = <0x00059000 0x180>; | |
143 | #phy-cells = <0>; | |
144 | ||
145 | clocks = <&gcc GCC_USB1_PHY_CFG_AHB_CLK>, | |
146 | <&xo>; | |
147 | clock-names = "cfg_ahb", "ref"; | |
148 | ||
149 | resets = <&gcc GCC_QUSB2_1_PHY_BCR>; | |
150 | status = "disabled"; | |
151 | }; | |
152 | ||
153 | ssphy_0: phy@78000 { | |
154 | compatible = "qcom,ipq8074-qmp-usb3-phy"; | |
155 | reg = <0x00078000 0x1c4>; | |
5e09bc51 SM |
156 | #address-cells = <1>; |
157 | #size-cells = <1>; | |
158 | ranges; | |
159 | ||
160 | clocks = <&gcc GCC_USB0_AUX_CLK>, | |
161 | <&gcc GCC_USB0_PHY_CFG_AHB_CLK>, | |
162 | <&xo>; | |
163 | clock-names = "aux", "cfg_ahb", "ref"; | |
164 | ||
165 | resets = <&gcc GCC_USB0_PHY_BCR>, | |
166 | <&gcc GCC_USB3PHY_0_PHY_BCR>; | |
167 | reset-names = "phy","common"; | |
168 | status = "disabled"; | |
169 | ||
1351512f | 170 | usb0_ssphy: phy@78200 { |
5e09bc51 SM |
171 | reg = <0x00078200 0x130>, /* Tx */ |
172 | <0x00078400 0x200>, /* Rx */ | |
173 | <0x00078800 0x1f8>, /* PCS */ | |
174 | <0x00078600 0x044>; /* PCS misc*/ | |
175 | #phy-cells = <0>; | |
82d61e19 | 176 | #clock-cells = <1>; |
5e09bc51 SM |
177 | clocks = <&gcc GCC_USB0_PIPE_CLK>; |
178 | clock-names = "pipe0"; | |
179 | clock-output-names = "gcc_usb0_pipe_clk_src"; | |
180 | }; | |
181 | }; | |
182 | ||
183 | qusb_phy_0: phy@79000 { | |
184 | compatible = "qcom,ipq8074-qusb2-phy"; | |
185 | reg = <0x00079000 0x180>; | |
186 | #phy-cells = <0>; | |
187 | ||
188 | clocks = <&gcc GCC_USB0_PHY_CFG_AHB_CLK>, | |
189 | <&xo>; | |
190 | clock-names = "cfg_ahb", "ref"; | |
191 | ||
192 | resets = <&gcc GCC_QUSB2_0_PHY_BCR>; | |
58b2785d | 193 | status = "disabled"; |
5e09bc51 SM |
194 | }; |
195 | ||
942bcd33 | 196 | pcie_qmp0: phy@86000 { |
e8a7fdc5 SM |
197 | compatible = "qcom,ipq8074-qmp-pcie-phy"; |
198 | reg = <0x00086000 0x1000>; | |
942bcd33 SG |
199 | #address-cells = <1>; |
200 | #size-cells = <1>; | |
201 | ranges; | |
e8a7fdc5 | 202 | |
942bcd33 SG |
203 | clocks = <&gcc GCC_PCIE0_AUX_CLK>, |
204 | <&gcc GCC_PCIE0_AHB_CLK>; | |
205 | clock-names = "aux", "cfg_ahb"; | |
e8a7fdc5 SM |
206 | resets = <&gcc GCC_PCIE0_PHY_BCR>, |
207 | <&gcc GCC_PCIE0PHY_PHY_BCR>; | |
208 | reset-names = "phy", | |
209 | "common"; | |
210 | status = "disabled"; | |
942bcd33 SG |
211 | |
212 | pcie_phy0: phy@86200 { | |
213 | reg = <0x86200 0x16c>, | |
214 | <0x86400 0x200>, | |
215 | <0x86800 0x4f4>; | |
216 | #phy-cells = <0>; | |
217 | #clock-cells = <0>; | |
218 | clocks = <&gcc GCC_PCIE0_PIPE_CLK>; | |
219 | clock-names = "pipe0"; | |
220 | clock-output-names = "pcie_0_pipe_clk"; | |
221 | }; | |
e8a7fdc5 SM |
222 | }; |
223 | ||
942bcd33 | 224 | pcie_qmp1: phy@8e000 { |
e8a7fdc5 SM |
225 | compatible = "qcom,ipq8074-qmp-pcie-phy"; |
226 | reg = <0x0008e000 0x1000>; | |
942bcd33 SG |
227 | #address-cells = <1>; |
228 | #size-cells = <1>; | |
229 | ranges; | |
e8a7fdc5 | 230 | |
942bcd33 SG |
231 | clocks = <&gcc GCC_PCIE1_AUX_CLK>, |
232 | <&gcc GCC_PCIE1_AHB_CLK>; | |
233 | clock-names = "aux", "cfg_ahb"; | |
e8a7fdc5 SM |
234 | resets = <&gcc GCC_PCIE1_PHY_BCR>, |
235 | <&gcc GCC_PCIE1PHY_PHY_BCR>; | |
236 | reset-names = "phy", | |
237 | "common"; | |
238 | status = "disabled"; | |
942bcd33 SG |
239 | |
240 | pcie_phy1: phy@8e200 { | |
241 | reg = <0x8e200 0x16c>, | |
242 | <0x8e400 0x200>, | |
243 | <0x8e800 0x4f4>; | |
244 | #phy-cells = <0>; | |
245 | #clock-cells = <0>; | |
246 | clocks = <&gcc GCC_PCIE1_PIPE_CLK>; | |
247 | clock-names = "pipe0"; | |
248 | clock-output-names = "pcie_1_pipe_clk"; | |
249 | }; | |
e8a7fdc5 SM |
250 | }; |
251 | ||
d201f677 RM |
252 | mdio: mdio@90000 { |
253 | compatible = "qcom,ipq4019-mdio"; | |
254 | reg = <0x00090000 0x64>; | |
255 | #address-cells = <1>; | |
256 | #size-cells = <0>; | |
257 | ||
258 | clocks = <&gcc GCC_MDIO_AHB_CLK>; | |
259 | clock-names = "gcc_mdio_ahb_clk"; | |
260 | ||
261 | status = "disabled"; | |
262 | }; | |
263 | ||
f26f6a5e RM |
264 | prng: rng@e3000 { |
265 | compatible = "qcom,prng-ee"; | |
266 | reg = <0x000e3000 0x1000>; | |
267 | clocks = <&gcc GCC_PRNG_AHB_CLK>; | |
268 | clock-names = "core"; | |
269 | status = "disabled"; | |
270 | }; | |
271 | ||
bbef0142 | 272 | cryptobam: dma-controller@704000 { |
f9e2df82 RM |
273 | compatible = "qcom,bam-v1.7.0"; |
274 | reg = <0x00704000 0x20000>; | |
275 | interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>; | |
276 | clocks = <&gcc GCC_CRYPTO_AHB_CLK>; | |
277 | clock-names = "bam_clk"; | |
278 | #dma-cells = <1>; | |
279 | qcom,ee = <1>; | |
8c97f0ac | 280 | qcom,controlled-remotely; |
f9e2df82 RM |
281 | status = "disabled"; |
282 | }; | |
283 | ||
284 | crypto: crypto@73a000 { | |
285 | compatible = "qcom,crypto-v5.1"; | |
286 | reg = <0x0073a000 0x6000>; | |
287 | clocks = <&gcc GCC_CRYPTO_AHB_CLK>, | |
288 | <&gcc GCC_CRYPTO_AXI_CLK>, | |
289 | <&gcc GCC_CRYPTO_CLK>; | |
290 | clock-names = "iface", "bus", "core"; | |
291 | dmas = <&cryptobam 2>, <&cryptobam 3>; | |
292 | dma-names = "rx", "tx"; | |
293 | status = "disabled"; | |
294 | }; | |
295 | ||
33057e16 | 296 | tlmm: pinctrl@1000000 { |
41dac73e | 297 | compatible = "qcom,ipq8074-pinctrl"; |
e8a7fdc5 | 298 | reg = <0x01000000 0x300000>; |
41dac73e VN |
299 | interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; |
300 | gpio-controller; | |
297177a4 | 301 | gpio-ranges = <&tlmm 0 0 70>; |
41dac73e VN |
302 | #gpio-cells = <0x2>; |
303 | interrupt-controller; | |
304 | #interrupt-cells = <0x2>; | |
22592a22 S |
305 | |
306 | serial_4_pins: serial4-pinmux { | |
307 | pins = "gpio23", "gpio24"; | |
308 | function = "blsp4_uart1"; | |
309 | drive-strength = <8>; | |
310 | bias-disable; | |
311 | }; | |
312 | ||
313 | i2c_0_pins: i2c-0-pinmux { | |
314 | pins = "gpio42", "gpio43"; | |
315 | function = "blsp1_i2c"; | |
316 | drive-strength = <8>; | |
317 | bias-disable; | |
318 | }; | |
319 | ||
320 | spi_0_pins: spi-0-pins { | |
321 | pins = "gpio38", "gpio39", "gpio40", "gpio41"; | |
322 | function = "blsp0_spi"; | |
323 | drive-strength = <8>; | |
324 | bias-disable; | |
325 | }; | |
326 | ||
327 | hsuart_pins: hsuart-pins { | |
328 | pins = "gpio46", "gpio47", "gpio48", "gpio49"; | |
329 | function = "blsp2_uart"; | |
330 | drive-strength = <8>; | |
331 | bias-disable; | |
332 | }; | |
333 | ||
334 | qpic_pins: qpic-pins { | |
335 | pins = "gpio1", "gpio3", "gpio4", | |
336 | "gpio5", "gpio6", "gpio7", | |
337 | "gpio8", "gpio10", "gpio11", | |
338 | "gpio12", "gpio13", "gpio14", | |
339 | "gpio15", "gpio16", "gpio17"; | |
340 | function = "qpic"; | |
341 | drive-strength = <8>; | |
342 | bias-disable; | |
343 | }; | |
41dac73e VN |
344 | }; |
345 | ||
41dac73e VN |
346 | gcc: gcc@1800000 { |
347 | compatible = "qcom,gcc-ipq8074"; | |
e8a7fdc5 | 348 | reg = <0x01800000 0x80000>; |
41dac73e VN |
349 | #clock-cells = <0x1>; |
350 | #reset-cells = <0x1>; | |
351 | }; | |
352 | ||
42124b94 RM |
353 | tcsr_mutex: hwlock@1905000 { |
354 | compatible = "qcom,tcsr-mutex"; | |
355 | reg = <0x01905000 0x20000>; | |
356 | #hwlock-cells = <1>; | |
357 | }; | |
358 | ||
63750607 RM |
359 | spmi_bus: spmi@200f000 { |
360 | compatible = "qcom,spmi-pmic-arb"; | |
361 | reg = <0x0200f000 0x001000>, | |
362 | <0x02400000 0x800000>, | |
363 | <0x02c00000 0x800000>, | |
364 | <0x03800000 0x200000>, | |
365 | <0x0200a000 0x000700>; | |
366 | reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; | |
367 | interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; | |
368 | interrupt-names = "periph_irq"; | |
369 | qcom,ee = <0>; | |
370 | qcom,channel = <0>; | |
371 | #address-cells = <2>; | |
372 | #size-cells = <0>; | |
373 | interrupt-controller; | |
374 | #interrupt-cells = <4>; | |
375 | cell-index = <0>; | |
376 | }; | |
377 | ||
cbc142c8 SM |
378 | sdhc_1: sdhci@7824900 { |
379 | compatible = "qcom,sdhci-msm-v4"; | |
380 | reg = <0x7824900 0x500>, <0x7824000 0x800>; | |
381 | reg-names = "hc_mem", "core_mem"; | |
382 | ||
383 | interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, | |
384 | <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; | |
385 | interrupt-names = "hc_irq", "pwr_irq"; | |
386 | ||
387 | clocks = <&xo>, | |
388 | <&gcc GCC_SDCC1_AHB_CLK>, | |
389 | <&gcc GCC_SDCC1_APPS_CLK>; | |
390 | clock-names = "xo", "iface", "core"; | |
391 | max-frequency = <384000000>; | |
392 | mmc-ddr-1_8v; | |
393 | mmc-hs200-1_8v; | |
394 | mmc-hs400-1_8v; | |
395 | bus-width = <8>; | |
396 | ||
397 | status = "disabled"; | |
398 | }; | |
399 | ||
b7fbf46c | 400 | blsp_dma: dma-controller@7884000 { |
22592a22 | 401 | compatible = "qcom,bam-v1.7.0"; |
e8a7fdc5 | 402 | reg = <0x07884000 0x2b000>; |
22592a22 S |
403 | interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; |
404 | clocks = <&gcc GCC_BLSP1_AHB_CLK>; | |
405 | clock-names = "bam_clk"; | |
406 | #dma-cells = <1>; | |
407 | qcom,ee = <0>; | |
408 | }; | |
409 | ||
410 | blsp1_uart1: serial@78af000 { | |
411 | compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; | |
e8a7fdc5 | 412 | reg = <0x078af000 0x200>; |
22592a22 S |
413 | interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; |
414 | clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, | |
415 | <&gcc GCC_BLSP1_AHB_CLK>; | |
416 | clock-names = "core", "iface"; | |
417 | status = "disabled"; | |
418 | }; | |
419 | ||
420 | blsp1_uart3: serial@78b1000 { | |
421 | compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; | |
e8a7fdc5 | 422 | reg = <0x078b1000 0x200>; |
22592a22 S |
423 | interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>; |
424 | clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, | |
425 | <&gcc GCC_BLSP1_AHB_CLK>; | |
426 | clock-names = "core", "iface"; | |
427 | dmas = <&blsp_dma 4>, | |
428 | <&blsp_dma 5>; | |
429 | dma-names = "tx", "rx"; | |
430 | pinctrl-0 = <&hsuart_pins>; | |
431 | pinctrl-names = "default"; | |
432 | status = "disabled"; | |
433 | }; | |
434 | ||
e8a7fdc5 SM |
435 | blsp1_uart5: serial@78b3000 { |
436 | compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; | |
437 | reg = <0x078b3000 0x200>; | |
438 | interrupts = <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>; | |
439 | clocks = <&gcc GCC_BLSP1_UART5_APPS_CLK>, | |
440 | <&gcc GCC_BLSP1_AHB_CLK>; | |
441 | clock-names = "core", "iface"; | |
442 | pinctrl-0 = <&serial_4_pins>; | |
443 | pinctrl-names = "default"; | |
444 | status = "disabled"; | |
445 | }; | |
446 | ||
22592a22 S |
447 | blsp1_spi1: spi@78b5000 { |
448 | compatible = "qcom,spi-qup-v2.2.1"; | |
449 | #address-cells = <1>; | |
450 | #size-cells = <0>; | |
e8a7fdc5 | 451 | reg = <0x078b5000 0x600>; |
22592a22 S |
452 | interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; |
453 | spi-max-frequency = <50000000>; | |
454 | clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>, | |
455 | <&gcc GCC_BLSP1_AHB_CLK>; | |
456 | clock-names = "core", "iface"; | |
457 | dmas = <&blsp_dma 12>, <&blsp_dma 13>; | |
458 | dma-names = "tx", "rx"; | |
459 | pinctrl-0 = <&spi_0_pins>; | |
460 | pinctrl-names = "default"; | |
461 | status = "disabled"; | |
462 | }; | |
463 | ||
464 | blsp1_i2c2: i2c@78b6000 { | |
465 | compatible = "qcom,i2c-qup-v2.2.1"; | |
466 | #address-cells = <1>; | |
467 | #size-cells = <0>; | |
e8a7fdc5 | 468 | reg = <0x078b6000 0x600>; |
22592a22 | 469 | interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; |
2374b99e KK |
470 | clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, |
471 | <&gcc GCC_BLSP1_AHB_CLK>; | |
472 | clock-names = "core", "iface"; | |
22592a22 | 473 | clock-frequency = <400000>; |
0e1b27f4 KK |
474 | dmas = <&blsp_dma 14>, <&blsp_dma 15>; |
475 | dma-names = "tx", "rx"; | |
22592a22 S |
476 | pinctrl-0 = <&i2c_0_pins>; |
477 | pinctrl-names = "default"; | |
478 | status = "disabled"; | |
479 | }; | |
480 | ||
481 | blsp1_i2c3: i2c@78b7000 { | |
482 | compatible = "qcom,i2c-qup-v2.2.1"; | |
483 | #address-cells = <1>; | |
484 | #size-cells = <0>; | |
e8a7fdc5 | 485 | reg = <0x078b7000 0x600>; |
22592a22 | 486 | interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; |
2374b99e KK |
487 | clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, |
488 | <&gcc GCC_BLSP1_AHB_CLK>; | |
489 | clock-names = "core", "iface"; | |
22592a22 | 490 | clock-frequency = <100000>; |
0e1b27f4 KK |
491 | dmas = <&blsp_dma 16>, <&blsp_dma 17>; |
492 | dma-names = "tx", "rx"; | |
22592a22 S |
493 | status = "disabled"; |
494 | }; | |
495 | ||
9c0bd8e5 CP |
496 | blsp1_i2c5: i2c@78b9000 { |
497 | compatible = "qcom,i2c-qup-v2.2.1"; | |
498 | #address-cells = <1>; | |
499 | #size-cells = <0>; | |
500 | reg = <0x78b9000 0x600>; | |
501 | interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; | |
2374b99e KK |
502 | clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, |
503 | <&gcc GCC_BLSP1_AHB_CLK>; | |
504 | clock-names = "core", "iface"; | |
9c0bd8e5 | 505 | clock-frequency = <400000>; |
0e1b27f4 KK |
506 | dmas = <&blsp_dma 20>, <&blsp_dma 21>; |
507 | dma-names = "tx", "rx"; | |
9c0bd8e5 CP |
508 | status = "disabled"; |
509 | }; | |
510 | ||
abe66bb7 RM |
511 | blsp1_i2c6: i2c@78ba000 { |
512 | compatible = "qcom,i2c-qup-v2.2.1"; | |
513 | #address-cells = <1>; | |
514 | #size-cells = <0>; | |
515 | reg = <0x078ba000 0x600>; | |
516 | interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; | |
2374b99e KK |
517 | clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, |
518 | <&gcc GCC_BLSP1_AHB_CLK>; | |
519 | clock-names = "core", "iface"; | |
abe66bb7 | 520 | clock-frequency = <100000>; |
0e1b27f4 KK |
521 | dmas = <&blsp_dma 22>, <&blsp_dma 23>; |
522 | dma-names = "tx", "rx"; | |
abe66bb7 RM |
523 | status = "disabled"; |
524 | }; | |
525 | ||
b7fbf46c | 526 | qpic_bam: dma-controller@7984000 { |
22592a22 | 527 | compatible = "qcom,bam-v1.7.0"; |
e8a7fdc5 | 528 | reg = <0x07984000 0x1a000>; |
22592a22 S |
529 | interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>; |
530 | clocks = <&gcc GCC_QPIC_AHB_CLK>; | |
531 | clock-names = "bam_clk"; | |
532 | #dma-cells = <1>; | |
533 | qcom,ee = <0>; | |
534 | status = "disabled"; | |
535 | }; | |
536 | ||
537 | qpic_nand: nand@79b0000 { | |
538 | compatible = "qcom,ipq8074-nand"; | |
e8a7fdc5 | 539 | reg = <0x079b0000 0x10000>; |
22592a22 S |
540 | #address-cells = <1>; |
541 | #size-cells = <0>; | |
542 | clocks = <&gcc GCC_QPIC_CLK>, | |
543 | <&gcc GCC_QPIC_AHB_CLK>; | |
544 | clock-names = "core", "aon"; | |
545 | ||
546 | dmas = <&qpic_bam 0>, | |
547 | <&qpic_bam 1>, | |
548 | <&qpic_bam 2>; | |
549 | dma-names = "tx", "rx", "cmd"; | |
550 | pinctrl-0 = <&qpic_pins>; | |
551 | pinctrl-names = "default"; | |
41dac73e VN |
552 | status = "disabled"; |
553 | }; | |
33057e16 | 554 | |
5e09bc51 | 555 | usb_0: usb@8af8800 { |
3a6b8bf1 | 556 | compatible = "qcom,ipq8074-dwc3", "qcom,dwc3"; |
5e09bc51 SM |
557 | reg = <0x08af8800 0x400>; |
558 | #address-cells = <1>; | |
559 | #size-cells = <1>; | |
560 | ranges; | |
561 | ||
562 | clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>, | |
563 | <&gcc GCC_USB0_MASTER_CLK>, | |
564 | <&gcc GCC_USB0_SLEEP_CLK>, | |
565 | <&gcc GCC_USB0_MOCK_UTMI_CLK>; | |
8d5fd4e4 KK |
566 | clock-names = "cfg_noc", |
567 | "core", | |
5e09bc51 SM |
568 | "sleep", |
569 | "mock_utmi"; | |
570 | ||
571 | assigned-clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>, | |
572 | <&gcc GCC_USB0_MASTER_CLK>, | |
573 | <&gcc GCC_USB0_MOCK_UTMI_CLK>; | |
574 | assigned-clock-rates = <133330000>, | |
575 | <133330000>, | |
576 | <19200000>; | |
577 | ||
578 | resets = <&gcc GCC_USB0_BCR>; | |
579 | status = "disabled"; | |
580 | ||
b77a1c4d | 581 | dwc_0: usb@8a00000 { |
5e09bc51 SM |
582 | compatible = "snps,dwc3"; |
583 | reg = <0x8a00000 0xcd00>; | |
584 | interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; | |
585 | phys = <&qusb_phy_0>, <&usb0_ssphy>; | |
586 | phy-names = "usb2-phy", "usb3-phy"; | |
5e09bc51 SM |
587 | snps,is-utmi-l1-suspend; |
588 | snps,hird-threshold = /bits/ 8 <0x0>; | |
589 | snps,dis_u2_susphy_quirk; | |
590 | snps,dis_u3_susphy_quirk; | |
591 | dr_mode = "host"; | |
592 | }; | |
593 | }; | |
594 | ||
595 | usb_1: usb@8cf8800 { | |
3a6b8bf1 | 596 | compatible = "qcom,ipq8074-dwc3", "qcom,dwc3"; |
5e09bc51 SM |
597 | reg = <0x08cf8800 0x400>; |
598 | #address-cells = <1>; | |
599 | #size-cells = <1>; | |
600 | ranges; | |
601 | ||
602 | clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>, | |
603 | <&gcc GCC_USB1_MASTER_CLK>, | |
604 | <&gcc GCC_USB1_SLEEP_CLK>, | |
605 | <&gcc GCC_USB1_MOCK_UTMI_CLK>; | |
8d5fd4e4 KK |
606 | clock-names = "cfg_noc", |
607 | "core", | |
5e09bc51 SM |
608 | "sleep", |
609 | "mock_utmi"; | |
610 | ||
611 | assigned-clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>, | |
612 | <&gcc GCC_USB1_MASTER_CLK>, | |
613 | <&gcc GCC_USB1_MOCK_UTMI_CLK>; | |
614 | assigned-clock-rates = <133330000>, | |
615 | <133330000>, | |
616 | <19200000>; | |
617 | ||
618 | resets = <&gcc GCC_USB1_BCR>; | |
619 | status = "disabled"; | |
620 | ||
b77a1c4d | 621 | dwc_1: usb@8c00000 { |
5e09bc51 SM |
622 | compatible = "snps,dwc3"; |
623 | reg = <0x8c00000 0xcd00>; | |
624 | interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; | |
625 | phys = <&qusb_phy_1>, <&usb1_ssphy>; | |
626 | phy-names = "usb2-phy", "usb3-phy"; | |
5e09bc51 SM |
627 | snps,is-utmi-l1-suspend; |
628 | snps,hird-threshold = /bits/ 8 <0x0>; | |
629 | snps,dis_u2_susphy_quirk; | |
630 | snps,dis_u3_susphy_quirk; | |
631 | dr_mode = "host"; | |
632 | }; | |
633 | }; | |
634 | ||
e8a7fdc5 SM |
635 | intc: interrupt-controller@b000000 { |
636 | compatible = "qcom,msm-qgic2"; | |
59892de9 K |
637 | #address-cells = <1>; |
638 | #size-cells = <1>; | |
e8a7fdc5 SM |
639 | interrupt-controller; |
640 | #interrupt-cells = <0x3>; | |
641 | reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>; | |
59892de9 K |
642 | ranges = <0 0xb00a000 0xffd>; |
643 | ||
644 | v2m@0 { | |
645 | compatible = "arm,gic-v2m-frame"; | |
646 | msi-controller; | |
647 | reg = <0x0 0xffd>; | |
648 | }; | |
e8a7fdc5 | 649 | }; |
33057e16 | 650 | |
e8a7fdc5 SM |
651 | timer { |
652 | compatible = "arm,armv8-timer"; | |
653 | interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | |
654 | <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | |
655 | <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | |
656 | <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | |
33057e16 S |
657 | }; |
658 | ||
949766e0 K |
659 | watchdog: watchdog@b017000 { |
660 | compatible = "qcom,kpss-wdt"; | |
661 | reg = <0xb017000 0x1000>; | |
662 | interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>; | |
663 | clocks = <&sleep_clk>; | |
664 | timeout-sec = <30>; | |
665 | }; | |
666 | ||
e8a7fdc5 SM |
667 | timer@b120000 { |
668 | #address-cells = <1>; | |
669 | #size-cells = <1>; | |
670 | ranges; | |
671 | compatible = "arm,armv7-timer-mem"; | |
672 | reg = <0x0b120000 0x1000>; | |
33057e16 | 673 | |
e8a7fdc5 SM |
674 | frame@b120000 { |
675 | frame-number = <0>; | |
676 | interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, | |
677 | <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; | |
678 | reg = <0x0b121000 0x1000>, | |
679 | <0x0b122000 0x1000>; | |
680 | }; | |
33057e16 | 681 | |
e8a7fdc5 SM |
682 | frame@b123000 { |
683 | frame-number = <1>; | |
684 | interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; | |
685 | reg = <0x0b123000 0x1000>; | |
686 | status = "disabled"; | |
687 | }; | |
33057e16 | 688 | |
e8a7fdc5 SM |
689 | frame@b124000 { |
690 | frame-number = <2>; | |
691 | interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; | |
692 | reg = <0x0b124000 0x1000>; | |
693 | status = "disabled"; | |
694 | }; | |
33057e16 | 695 | |
e8a7fdc5 SM |
696 | frame@b125000 { |
697 | frame-number = <3>; | |
698 | interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; | |
699 | reg = <0x0b125000 0x1000>; | |
700 | status = "disabled"; | |
701 | }; | |
33057e16 | 702 | |
e8a7fdc5 SM |
703 | frame@b126000 { |
704 | frame-number = <4>; | |
705 | interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; | |
706 | reg = <0x0b126000 0x1000>; | |
707 | status = "disabled"; | |
708 | }; | |
33057e16 | 709 | |
e8a7fdc5 SM |
710 | frame@b127000 { |
711 | frame-number = <5>; | |
712 | interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; | |
713 | reg = <0x0b127000 0x1000>; | |
714 | status = "disabled"; | |
715 | }; | |
33057e16 | 716 | |
e8a7fdc5 SM |
717 | frame@b128000 { |
718 | frame-number = <6>; | |
719 | interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; | |
720 | reg = <0x0b128000 0x1000>; | |
721 | status = "disabled"; | |
722 | }; | |
33057e16 S |
723 | }; |
724 | ||
725 | pcie1: pci@10000000 { | |
726 | compatible = "qcom,pcie-ipq8074"; | |
52c9887f VK |
727 | reg = <0x10000000 0xf1d>, |
728 | <0x10000f20 0xa8>, | |
729 | <0x00088000 0x2000>, | |
730 | <0x10100000 0x1000>; | |
33057e16 S |
731 | reg-names = "dbi", "elbi", "parf", "config"; |
732 | device_type = "pci"; | |
733 | linux,pci-domain = <1>; | |
734 | bus-range = <0x00 0xff>; | |
735 | num-lanes = <1>; | |
736 | #address-cells = <3>; | |
737 | #size-cells = <2>; | |
738 | ||
739 | phys = <&pcie_phy1>; | |
740 | phy-names = "pciephy"; | |
741 | ||
742 | ranges = <0x81000000 0 0x10200000 0x10200000 | |
743 | 0 0x100000 /* downstream I/O */ | |
744 | 0x82000000 0 0x10300000 0x10300000 | |
745 | 0 0xd00000>; /* non-prefetchable memory */ | |
746 | ||
747 | interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; | |
748 | interrupt-names = "msi"; | |
749 | #interrupt-cells = <1>; | |
750 | interrupt-map-mask = <0 0 0 0x7>; | |
751 | interrupt-map = <0 0 0 1 &intc 0 142 | |
752 | IRQ_TYPE_LEVEL_HIGH>, /* int_a */ | |
753 | <0 0 0 2 &intc 0 143 | |
754 | IRQ_TYPE_LEVEL_HIGH>, /* int_b */ | |
755 | <0 0 0 3 &intc 0 144 | |
756 | IRQ_TYPE_LEVEL_HIGH>, /* int_c */ | |
757 | <0 0 0 4 &intc 0 145 | |
758 | IRQ_TYPE_LEVEL_HIGH>; /* int_d */ | |
759 | ||
760 | clocks = <&gcc GCC_SYS_NOC_PCIE1_AXI_CLK>, | |
761 | <&gcc GCC_PCIE1_AXI_M_CLK>, | |
762 | <&gcc GCC_PCIE1_AXI_S_CLK>, | |
763 | <&gcc GCC_PCIE1_AHB_CLK>, | |
764 | <&gcc GCC_PCIE1_AUX_CLK>; | |
765 | clock-names = "iface", | |
766 | "axi_m", | |
767 | "axi_s", | |
768 | "ahb", | |
769 | "aux"; | |
770 | resets = <&gcc GCC_PCIE1_PIPE_ARES>, | |
771 | <&gcc GCC_PCIE1_SLEEP_ARES>, | |
772 | <&gcc GCC_PCIE1_CORE_STICKY_ARES>, | |
773 | <&gcc GCC_PCIE1_AXI_MASTER_ARES>, | |
774 | <&gcc GCC_PCIE1_AXI_SLAVE_ARES>, | |
775 | <&gcc GCC_PCIE1_AHB_ARES>, | |
776 | <&gcc GCC_PCIE1_AXI_MASTER_STICKY_ARES>; | |
777 | reset-names = "pipe", | |
778 | "sleep", | |
779 | "sticky", | |
780 | "axi_m", | |
781 | "axi_s", | |
782 | "ahb", | |
783 | "axi_m_sticky"; | |
784 | status = "disabled"; | |
785 | }; | |
41dac73e | 786 | |
e8a7fdc5 SM |
787 | pcie0: pci@20000000 { |
788 | compatible = "qcom,pcie-ipq8074"; | |
52c9887f VK |
789 | reg = <0x20000000 0xf1d>, |
790 | <0x20000f20 0xa8>, | |
791 | <0x00080000 0x2000>, | |
792 | <0x20100000 0x1000>; | |
e8a7fdc5 SM |
793 | reg-names = "dbi", "elbi", "parf", "config"; |
794 | device_type = "pci"; | |
795 | linux,pci-domain = <0>; | |
796 | bus-range = <0x00 0xff>; | |
797 | num-lanes = <1>; | |
798 | #address-cells = <3>; | |
799 | #size-cells = <2>; | |
41dac73e | 800 | |
e8a7fdc5 SM |
801 | phys = <&pcie_phy0>; |
802 | phy-names = "pciephy"; | |
41dac73e | 803 | |
e8a7fdc5 SM |
804 | ranges = <0x81000000 0 0x20200000 0x20200000 |
805 | 0 0x100000 /* downstream I/O */ | |
806 | 0x82000000 0 0x20300000 0x20300000 | |
807 | 0 0xd00000>; /* non-prefetchable memory */ | |
41dac73e | 808 | |
e8a7fdc5 SM |
809 | interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; |
810 | interrupt-names = "msi"; | |
811 | #interrupt-cells = <1>; | |
812 | interrupt-map-mask = <0 0 0 0x7>; | |
813 | interrupt-map = <0 0 0 1 &intc 0 75 | |
814 | IRQ_TYPE_LEVEL_HIGH>, /* int_a */ | |
815 | <0 0 0 2 &intc 0 78 | |
816 | IRQ_TYPE_LEVEL_HIGH>, /* int_b */ | |
817 | <0 0 0 3 &intc 0 79 | |
818 | IRQ_TYPE_LEVEL_HIGH>, /* int_c */ | |
819 | <0 0 0 4 &intc 0 83 | |
820 | IRQ_TYPE_LEVEL_HIGH>; /* int_d */ | |
41dac73e | 821 | |
e8a7fdc5 SM |
822 | clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>, |
823 | <&gcc GCC_PCIE0_AXI_M_CLK>, | |
824 | <&gcc GCC_PCIE0_AXI_S_CLK>, | |
825 | <&gcc GCC_PCIE0_AHB_CLK>, | |
826 | <&gcc GCC_PCIE0_AUX_CLK>; | |
41dac73e | 827 | |
e8a7fdc5 SM |
828 | clock-names = "iface", |
829 | "axi_m", | |
830 | "axi_s", | |
831 | "ahb", | |
832 | "aux"; | |
833 | resets = <&gcc GCC_PCIE0_PIPE_ARES>, | |
834 | <&gcc GCC_PCIE0_SLEEP_ARES>, | |
835 | <&gcc GCC_PCIE0_CORE_STICKY_ARES>, | |
836 | <&gcc GCC_PCIE0_AXI_MASTER_ARES>, | |
837 | <&gcc GCC_PCIE0_AXI_SLAVE_ARES>, | |
838 | <&gcc GCC_PCIE0_AHB_ARES>, | |
839 | <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>; | |
840 | reset-names = "pipe", | |
841 | "sleep", | |
842 | "sticky", | |
843 | "axi_m", | |
844 | "axi_s", | |
845 | "ahb", | |
846 | "axi_m_sticky"; | |
847 | status = "disabled"; | |
41dac73e VN |
848 | }; |
849 | }; | |
850 | }; |