1// SPDX-License-Identifier: GPL-2.0-only 2/* 3 * Copyright (c) 2017, The Linux Foundation. All rights reserved. 4 */ 5 6#include <dt-bindings/interrupt-controller/arm-gic.h> 7#include <dt-bindings/clock/qcom,gcc-ipq8074.h> 8 9/ { 10 #address-cells = <2>; 11 #size-cells = <2>; 12 13 model = "Qualcomm Technologies, Inc. IPQ8074"; 14 compatible = "qcom,ipq8074"; 15 interrupt-parent = <&intc>; 16 17 clocks { 18 sleep_clk: sleep_clk { 19 compatible = "fixed-clock"; 20 clock-frequency = <32768>; 21 #clock-cells = <0>; 22 }; 23 24 xo: xo { 25 compatible = "fixed-clock"; 26 clock-frequency = <19200000>; 27 #clock-cells = <0>; 28 }; 29 }; 30 31 cpus { 32 #address-cells = <1>; 33 #size-cells = <0>; 34 35 CPU0: cpu@0 { 36 device_type = "cpu"; 37 compatible = "arm,cortex-a53"; 38 reg = <0x0>; 39 next-level-cache = <&L2_0>; 40 enable-method = "psci"; 41 }; 42 43 CPU1: cpu@1 { 44 device_type = "cpu"; 45 compatible = "arm,cortex-a53"; 46 enable-method = "psci"; 47 reg = <0x1>; 48 next-level-cache = <&L2_0>; 49 }; 50 51 CPU2: cpu@2 { 52 device_type = "cpu"; 53 compatible = "arm,cortex-a53"; 54 enable-method = "psci"; 55 reg = <0x2>; 56 next-level-cache = <&L2_0>; 57 }; 58 59 CPU3: cpu@3 { 60 device_type = "cpu"; 61 compatible = "arm,cortex-a53"; 62 enable-method = "psci"; 63 reg = <0x3>; 64 next-level-cache = <&L2_0>; 65 }; 66 67 L2_0: l2-cache { 68 compatible = "cache"; 69 cache-level = <2>; 70 cache-unified; 71 }; 72 }; 73 74 pmu { 75 compatible = "arm,cortex-a53-pmu"; 76 interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 77 }; 78 79 psci { 80 compatible = "arm,psci-1.0"; 81 method = "smc"; 82 }; 83 84 reserved-memory { 85 #address-cells = <2>; 86 #size-cells = <2>; 87 ranges; 88 89 bootloader@4a600000 { 90 reg = <0x0 0x4a600000 0x0 0x400000>; 91 no-map; 92 }; 93 94 sbl@4aa00000 { 95 reg = <0x0 0x4aa00000 0x0 0x100000>; 96 no-map; 97 }; 98 99 smem@4ab00000 { 100 compatible = "qcom,smem"; 101 reg = <0x0 0x4ab00000 0x0 0x100000>; 102 no-map; 103 104 hwlocks = <&tcsr_mutex 3>; 105 }; 106 107 memory@4ac00000 { 108 reg = <0x0 0x4ac00000 0x0 0x400000>; 109 no-map; 110 }; 111 }; 112 113 firmware { 114 scm { 115 compatible = "qcom,scm-ipq8074", "qcom,scm"; 116 qcom,dload-mode = <&tcsr 0x6100>; 117 }; 118 }; 119 120 soc: soc@0 { 121 #address-cells = <1>; 122 #size-cells = <1>; 123 ranges = <0 0 0 0xffffffff>; 124 compatible = "simple-bus"; 125 126 ssphy_1: phy@58000 { 127 compatible = "qcom,ipq8074-qmp-usb3-phy"; 128 reg = <0x00058000 0x1000>; 129 130 clocks = <&gcc GCC_USB1_AUX_CLK>, 131 <&xo>, 132 <&gcc GCC_USB1_PHY_CFG_AHB_CLK>, 133 <&gcc GCC_USB1_PIPE_CLK>; 134 clock-names = "aux", 135 "ref", 136 "cfg_ahb", 137 "pipe"; 138 clock-output-names = "usb3phy_1_cc_pipe_clk"; 139 #clock-cells = <0>; 140 #phy-cells = <0>; 141 142 resets = <&gcc GCC_USB1_PHY_BCR>, 143 <&gcc GCC_USB3PHY_1_PHY_BCR>; 144 reset-names = "phy", 145 "phy_phy"; 146 147 status = "disabled"; 148 }; 149 150 qusb_phy_1: phy@59000 { 151 compatible = "qcom,ipq8074-qusb2-phy"; 152 reg = <0x00059000 0x180>; 153 #phy-cells = <0>; 154 155 clocks = <&gcc GCC_USB1_PHY_CFG_AHB_CLK>, 156 <&xo>; 157 clock-names = "cfg_ahb", "ref"; 158 159 resets = <&gcc GCC_QUSB2_1_PHY_BCR>; 160 status = "disabled"; 161 }; 162 163 ssphy_0: phy@78000 { 164 compatible = "qcom,ipq8074-qmp-usb3-phy"; 165 reg = <0x00078000 0x1000>; 166 167 clocks = <&gcc GCC_USB0_AUX_CLK>, 168 <&xo>, 169 <&gcc GCC_USB0_PHY_CFG_AHB_CLK>, 170 <&gcc GCC_USB0_PIPE_CLK>; 171 clock-names = "aux", 172 "ref", 173 "cfg_ahb", 174 "pipe"; 175 clock-output-names = "usb3phy_0_cc_pipe_clk"; 176 #clock-cells = <0>; 177 #phy-cells = <0>; 178 179 resets = <&gcc GCC_USB0_PHY_BCR>, 180 <&gcc GCC_USB3PHY_0_PHY_BCR>; 181 reset-names = "phy", 182 "phy_phy"; 183 184 status = "disabled"; 185 }; 186 187 qusb_phy_0: phy@79000 { 188 compatible = "qcom,ipq8074-qusb2-phy"; 189 reg = <0x00079000 0x180>; 190 #phy-cells = <0>; 191 192 clocks = <&gcc GCC_USB0_PHY_CFG_AHB_CLK>, 193 <&xo>; 194 clock-names = "cfg_ahb", "ref"; 195 196 resets = <&gcc GCC_QUSB2_0_PHY_BCR>; 197 status = "disabled"; 198 }; 199 200 pcie_qmp0: phy@84000 { 201 compatible = "qcom,ipq8074-qmp-gen3-pcie-phy"; 202 reg = <0x00084000 0x1000>; 203 204 clocks = <&gcc GCC_PCIE0_AUX_CLK>, 205 <&gcc GCC_PCIE0_AHB_CLK>, 206 <&gcc GCC_PCIE0_PIPE_CLK>; 207 clock-names = "aux", 208 "cfg_ahb", 209 "pipe"; 210 211 clock-output-names = "pcie20_phy0_pipe_clk"; 212 #clock-cells = <0>; 213 214 #phy-cells = <0>; 215 216 resets = <&gcc GCC_PCIE0_PHY_BCR>, 217 <&gcc GCC_PCIE0PHY_PHY_BCR>; 218 reset-names = "phy", 219 "common"; 220 status = "disabled"; 221 }; 222 223 pcie_qmp1: phy@8e000 { 224 compatible = "qcom,ipq8074-qmp-pcie-phy"; 225 reg = <0x0008e000 0x1000>; 226 227 clocks = <&gcc GCC_PCIE1_AUX_CLK>, 228 <&gcc GCC_PCIE1_AHB_CLK>, 229 <&gcc GCC_PCIE1_PIPE_CLK>; 230 clock-names = "aux", 231 "cfg_ahb", 232 "pipe"; 233 234 clock-output-names = "pcie20_phy1_pipe_clk"; 235 #clock-cells = <0>; 236 237 #phy-cells = <0>; 238 239 resets = <&gcc GCC_PCIE1_PHY_BCR>, 240 <&gcc GCC_PCIE1PHY_PHY_BCR>; 241 reset-names = "phy", 242 "common"; 243 status = "disabled"; 244 }; 245 246 mdio: mdio@90000 { 247 compatible = "qcom,ipq8074-mdio", "qcom,ipq4019-mdio"; 248 reg = <0x00090000 0x64>; 249 #address-cells = <1>; 250 #size-cells = <0>; 251 252 clocks = <&gcc GCC_MDIO_AHB_CLK>; 253 clock-names = "gcc_mdio_ahb_clk"; 254 255 clock-frequency = <6250000>; 256 257 status = "disabled"; 258 }; 259 260 qfprom: efuse@a4000 { 261 compatible = "qcom,ipq8074-qfprom", "qcom,qfprom"; 262 reg = <0x000a4000 0x2000>; 263 #address-cells = <1>; 264 #size-cells = <1>; 265 }; 266 267 prng: rng@e3000 { 268 compatible = "qcom,prng-ee"; 269 reg = <0x000e3000 0x1000>; 270 clocks = <&gcc GCC_PRNG_AHB_CLK>; 271 clock-names = "core"; 272 status = "disabled"; 273 }; 274 275 tsens: thermal-sensor@4a9000 { 276 compatible = "qcom,ipq8074-tsens"; 277 reg = <0x4a9000 0x1000>, /* TM */ 278 <0x4a8000 0x1000>; /* SROT */ 279 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 280 interrupt-names = "combined"; 281 #qcom,sensors = <16>; 282 #thermal-sensor-cells = <1>; 283 }; 284 285 cryptobam: dma-controller@704000 { 286 compatible = "qcom,bam-v1.7.0"; 287 reg = <0x00704000 0x20000>; 288 interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>; 289 clocks = <&gcc GCC_CRYPTO_AHB_CLK>; 290 clock-names = "bam_clk"; 291 #dma-cells = <1>; 292 qcom,ee = <1>; 293 qcom,controlled-remotely; 294 status = "disabled"; 295 }; 296 297 crypto: crypto@73a000 { 298 compatible = "qcom,crypto-v5.1"; 299 reg = <0x0073a000 0x6000>; 300 clocks = <&gcc GCC_CRYPTO_AHB_CLK>, 301 <&gcc GCC_CRYPTO_AXI_CLK>, 302 <&gcc GCC_CRYPTO_CLK>; 303 clock-names = "iface", "bus", "core"; 304 dmas = <&cryptobam 2>, <&cryptobam 3>; 305 dma-names = "rx", "tx"; 306 status = "disabled"; 307 }; 308 309 tlmm: pinctrl@1000000 { 310 compatible = "qcom,ipq8074-pinctrl"; 311 reg = <0x01000000 0x300000>; 312 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 313 gpio-controller; 314 gpio-ranges = <&tlmm 0 0 70>; 315 #gpio-cells = <2>; 316 interrupt-controller; 317 #interrupt-cells = <2>; 318 319 serial_4_pins: serial4-state { 320 pins = "gpio23", "gpio24"; 321 function = "blsp4_uart1"; 322 drive-strength = <8>; 323 bias-disable; 324 }; 325 326 serial_5_pins: serial5-state { 327 pins = "gpio9", "gpio16"; 328 function = "blsp5_uart"; 329 drive-strength = <8>; 330 bias-disable; 331 }; 332 333 i2c_0_pins: i2c-0-state { 334 pins = "gpio42", "gpio43"; 335 function = "blsp1_i2c"; 336 drive-strength = <8>; 337 bias-disable; 338 }; 339 340 spi_0_pins: spi-0-state { 341 pins = "gpio38", "gpio39", "gpio40", "gpio41"; 342 function = "blsp0_spi"; 343 drive-strength = <8>; 344 bias-disable; 345 }; 346 347 hsuart_pins: hsuart-state { 348 pins = "gpio46", "gpio47", "gpio48", "gpio49"; 349 function = "blsp2_uart"; 350 drive-strength = <8>; 351 bias-disable; 352 }; 353 354 qpic_pins: qpic-state { 355 pins = "gpio1", "gpio3", "gpio4", 356 "gpio5", "gpio6", "gpio7", 357 "gpio8", "gpio10", "gpio11", 358 "gpio12", "gpio13", "gpio14", 359 "gpio15", "gpio17"; 360 function = "qpic"; 361 drive-strength = <8>; 362 bias-disable; 363 }; 364 }; 365 366 gcc: gcc@1800000 { 367 compatible = "qcom,gcc-ipq8074"; 368 reg = <0x01800000 0x80000>; 369 clocks = <&xo>, 370 <&sleep_clk>, 371 <&pcie_qmp0>, 372 <&pcie_qmp1>; 373 clock-names = "xo", 374 "sleep_clk", 375 "pcie0_pipe", 376 "pcie1_pipe"; 377 #clock-cells = <1>; 378 #power-domain-cells = <1>; 379 #reset-cells = <1>; 380 }; 381 382 tcsr_mutex: hwlock@1905000 { 383 compatible = "qcom,tcsr-mutex"; 384 reg = <0x01905000 0x20000>; 385 #hwlock-cells = <1>; 386 }; 387 388 tcsr: syscon@1937000 { 389 compatible = "qcom,tcsr-ipq8074", "syscon"; 390 reg = <0x01937000 0x21000>; 391 }; 392 393 spmi_bus: spmi@200f000 { 394 compatible = "qcom,spmi-pmic-arb"; 395 reg = <0x0200f000 0x001000>, 396 <0x02400000 0x800000>, 397 <0x02c00000 0x800000>, 398 <0x03800000 0x200000>, 399 <0x0200a000 0x000700>; 400 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 401 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 402 interrupt-names = "periph_irq"; 403 qcom,ee = <0>; 404 qcom,channel = <0>; 405 #address-cells = <2>; 406 #size-cells = <0>; 407 interrupt-controller; 408 #interrupt-cells = <4>; 409 }; 410 411 sdhc_1: mmc@7824900 { 412 compatible = "qcom,ipq8074-sdhci", "qcom,sdhci-msm-v4"; 413 reg = <0x7824900 0x500>, <0x7824000 0x800>; 414 reg-names = "hc", "core"; 415 416 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 417 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 418 interrupt-names = "hc_irq", "pwr_irq"; 419 420 clocks = <&gcc GCC_SDCC1_AHB_CLK>, 421 <&gcc GCC_SDCC1_APPS_CLK>, 422 <&xo>; 423 clock-names = "iface", "core", "xo"; 424 resets = <&gcc GCC_SDCC1_BCR>; 425 max-frequency = <384000000>; 426 mmc-ddr-1_8v; 427 mmc-hs200-1_8v; 428 mmc-hs400-1_8v; 429 bus-width = <8>; 430 431 status = "disabled"; 432 }; 433 434 blsp_dma: dma-controller@7884000 { 435 compatible = "qcom,bam-v1.7.0"; 436 reg = <0x07884000 0x2b000>; 437 interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 438 clocks = <&gcc GCC_BLSP1_AHB_CLK>; 439 clock-names = "bam_clk"; 440 #dma-cells = <1>; 441 qcom,ee = <0>; 442 }; 443 444 blsp1_uart1: serial@78af000 { 445 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 446 reg = <0x078af000 0x200>; 447 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 448 clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, 449 <&gcc GCC_BLSP1_AHB_CLK>; 450 clock-names = "core", "iface"; 451 status = "disabled"; 452 }; 453 454 blsp1_uart3: serial@78b1000 { 455 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 456 reg = <0x078b1000 0x200>; 457 interrupts = <GIC_SPI 306 IRQ_TYPE_LEVEL_HIGH>; 458 clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, 459 <&gcc GCC_BLSP1_AHB_CLK>; 460 clock-names = "core", "iface"; 461 dmas = <&blsp_dma 4>, 462 <&blsp_dma 5>; 463 dma-names = "tx", "rx"; 464 pinctrl-0 = <&hsuart_pins>; 465 pinctrl-names = "default"; 466 status = "disabled"; 467 }; 468 469 blsp1_uart5: serial@78b3000 { 470 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 471 reg = <0x078b3000 0x200>; 472 interrupts = <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>; 473 clocks = <&gcc GCC_BLSP1_UART5_APPS_CLK>, 474 <&gcc GCC_BLSP1_AHB_CLK>; 475 clock-names = "core", "iface"; 476 pinctrl-0 = <&serial_4_pins>; 477 pinctrl-names = "default"; 478 status = "disabled"; 479 }; 480 481 blsp1_uart6: serial@78b4000 { 482 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 483 reg = <0x078b4000 0x200>; 484 interrupts = <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>; 485 clocks = <&gcc GCC_BLSP1_UART6_APPS_CLK>, 486 <&gcc GCC_BLSP1_AHB_CLK>; 487 clock-names = "core", "iface"; 488 pinctrl-0 = <&serial_5_pins>; 489 pinctrl-names = "default"; 490 status = "disabled"; 491 }; 492 493 blsp1_spi1: spi@78b5000 { 494 compatible = "qcom,spi-qup-v2.2.1"; 495 #address-cells = <1>; 496 #size-cells = <0>; 497 reg = <0x078b5000 0x600>; 498 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 499 clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>, 500 <&gcc GCC_BLSP1_AHB_CLK>; 501 clock-names = "core", "iface"; 502 dmas = <&blsp_dma 12>, <&blsp_dma 13>; 503 dma-names = "tx", "rx"; 504 pinctrl-0 = <&spi_0_pins>; 505 pinctrl-names = "default"; 506 status = "disabled"; 507 }; 508 509 blsp1_i2c2: i2c@78b6000 { 510 compatible = "qcom,i2c-qup-v2.2.1"; 511 #address-cells = <1>; 512 #size-cells = <0>; 513 reg = <0x078b6000 0x600>; 514 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 515 clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, 516 <&gcc GCC_BLSP1_AHB_CLK>; 517 clock-names = "core", "iface"; 518 clock-frequency = <400000>; 519 dmas = <&blsp_dma 14>, <&blsp_dma 15>; 520 dma-names = "tx", "rx"; 521 pinctrl-0 = <&i2c_0_pins>; 522 pinctrl-names = "default"; 523 status = "disabled"; 524 }; 525 526 blsp1_i2c3: i2c@78b7000 { 527 compatible = "qcom,i2c-qup-v2.2.1"; 528 #address-cells = <1>; 529 #size-cells = <0>; 530 reg = <0x078b7000 0x600>; 531 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 532 clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, 533 <&gcc GCC_BLSP1_AHB_CLK>; 534 clock-names = "core", "iface"; 535 clock-frequency = <100000>; 536 dmas = <&blsp_dma 16>, <&blsp_dma 17>; 537 dma-names = "tx", "rx"; 538 status = "disabled"; 539 }; 540 541 blsp1_spi4: spi@78b8000 { 542 compatible = "qcom,spi-qup-v2.2.1"; 543 #address-cells = <1>; 544 #size-cells = <0>; 545 reg = <0x78b8000 0x600>; 546 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 547 clocks = <&gcc GCC_BLSP1_QUP4_SPI_APPS_CLK>, 548 <&gcc GCC_BLSP1_AHB_CLK>; 549 clock-names = "core", "iface"; 550 dmas = <&blsp_dma 18>, <&blsp_dma 19>; 551 dma-names = "tx", "rx"; 552 status = "disabled"; 553 }; 554 555 blsp1_i2c5: i2c@78b9000 { 556 compatible = "qcom,i2c-qup-v2.2.1"; 557 #address-cells = <1>; 558 #size-cells = <0>; 559 reg = <0x78b9000 0x600>; 560 interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 561 clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, 562 <&gcc GCC_BLSP1_AHB_CLK>; 563 clock-names = "core", "iface"; 564 clock-frequency = <400000>; 565 dmas = <&blsp_dma 20>, <&blsp_dma 21>; 566 dma-names = "tx", "rx"; 567 status = "disabled"; 568 }; 569 570 blsp1_spi5: spi@78b9000 { 571 compatible = "qcom,spi-qup-v2.2.1"; 572 #address-cells = <1>; 573 #size-cells = <0>; 574 reg = <0x78b9000 0x600>; 575 interrupts = <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>; 576 clocks = <&gcc GCC_BLSP1_QUP5_SPI_APPS_CLK>, 577 <&gcc GCC_BLSP1_AHB_CLK>; 578 clock-names = "core", "iface"; 579 dmas = <&blsp_dma 20>, <&blsp_dma 21>; 580 dma-names = "tx", "rx"; 581 status = "disabled"; 582 }; 583 584 blsp1_i2c6: i2c@78ba000 { 585 compatible = "qcom,i2c-qup-v2.2.1"; 586 #address-cells = <1>; 587 #size-cells = <0>; 588 reg = <0x078ba000 0x600>; 589 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 590 clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, 591 <&gcc GCC_BLSP1_AHB_CLK>; 592 clock-names = "core", "iface"; 593 clock-frequency = <100000>; 594 dmas = <&blsp_dma 22>, <&blsp_dma 23>; 595 dma-names = "tx", "rx"; 596 status = "disabled"; 597 }; 598 599 qpic_bam: dma-controller@7984000 { 600 compatible = "qcom,bam-v1.7.0"; 601 reg = <0x07984000 0x1a000>; 602 interrupts = <GIC_SPI 146 IRQ_TYPE_LEVEL_HIGH>; 603 clocks = <&gcc GCC_QPIC_AHB_CLK>; 604 clock-names = "bam_clk"; 605 #dma-cells = <1>; 606 qcom,ee = <0>; 607 status = "disabled"; 608 }; 609 610 qpic_nand: nand-controller@79b0000 { 611 compatible = "qcom,ipq8074-nand"; 612 reg = <0x079b0000 0x10000>; 613 #address-cells = <1>; 614 #size-cells = <0>; 615 clocks = <&gcc GCC_QPIC_CLK>, 616 <&gcc GCC_QPIC_AHB_CLK>; 617 clock-names = "core", "aon"; 618 619 dmas = <&qpic_bam 0>, 620 <&qpic_bam 1>, 621 <&qpic_bam 2>; 622 dma-names = "tx", "rx", "cmd"; 623 pinctrl-0 = <&qpic_pins>; 624 pinctrl-names = "default"; 625 status = "disabled"; 626 }; 627 628 usb_0: usb@8af8800 { 629 compatible = "qcom,ipq8074-dwc3", "qcom,dwc3"; 630 reg = <0x08af8800 0x400>; 631 #address-cells = <1>; 632 #size-cells = <1>; 633 ranges; 634 635 clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>, 636 <&gcc GCC_USB0_MASTER_CLK>, 637 <&gcc GCC_USB0_SLEEP_CLK>, 638 <&gcc GCC_USB0_MOCK_UTMI_CLK>; 639 clock-names = "cfg_noc", 640 "core", 641 "sleep", 642 "mock_utmi"; 643 644 assigned-clocks = <&gcc GCC_SYS_NOC_USB0_AXI_CLK>, 645 <&gcc GCC_USB0_MASTER_CLK>, 646 <&gcc GCC_USB0_MOCK_UTMI_CLK>; 647 assigned-clock-rates = <133330000>, 648 <133330000>, 649 <19200000>; 650 651 interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>, 652 <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 653 <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>; 654 interrupt-names = "pwr_event", 655 "qusb2_phy", 656 "ss_phy_irq"; 657 658 power-domains = <&gcc USB0_GDSC>; 659 660 resets = <&gcc GCC_USB0_BCR>; 661 status = "disabled"; 662 663 dwc_0: usb@8a00000 { 664 compatible = "snps,dwc3"; 665 reg = <0x8a00000 0xcd00>; 666 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 667 phys = <&qusb_phy_0>, <&ssphy_0>; 668 phy-names = "usb2-phy", "usb3-phy"; 669 snps,is-utmi-l1-suspend; 670 snps,hird-threshold = /bits/ 8 <0x0>; 671 snps,dis_u2_susphy_quirk; 672 snps,dis_u3_susphy_quirk; 673 dr_mode = "host"; 674 }; 675 }; 676 677 usb_1: usb@8cf8800 { 678 compatible = "qcom,ipq8074-dwc3", "qcom,dwc3"; 679 reg = <0x08cf8800 0x400>; 680 #address-cells = <1>; 681 #size-cells = <1>; 682 ranges; 683 684 clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>, 685 <&gcc GCC_USB1_MASTER_CLK>, 686 <&gcc GCC_USB1_SLEEP_CLK>, 687 <&gcc GCC_USB1_MOCK_UTMI_CLK>; 688 clock-names = "cfg_noc", 689 "core", 690 "sleep", 691 "mock_utmi"; 692 693 assigned-clocks = <&gcc GCC_SYS_NOC_USB1_AXI_CLK>, 694 <&gcc GCC_USB1_MASTER_CLK>, 695 <&gcc GCC_USB1_MOCK_UTMI_CLK>; 696 assigned-clock-rates = <133330000>, 697 <133330000>, 698 <19200000>; 699 700 interrupts = <GIC_SPI 128 IRQ_TYPE_LEVEL_HIGH>, 701 <GIC_SPI 136 IRQ_TYPE_LEVEL_HIGH>, 702 <GIC_SPI 225 IRQ_TYPE_LEVEL_HIGH>; 703 interrupt-names = "pwr_event", 704 "qusb2_phy", 705 "ss_phy_irq"; 706 707 power-domains = <&gcc USB1_GDSC>; 708 709 resets = <&gcc GCC_USB1_BCR>; 710 status = "disabled"; 711 712 dwc_1: usb@8c00000 { 713 compatible = "snps,dwc3"; 714 reg = <0x8c00000 0xcd00>; 715 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 716 phys = <&qusb_phy_1>, <&ssphy_1>; 717 phy-names = "usb2-phy", "usb3-phy"; 718 snps,is-utmi-l1-suspend; 719 snps,hird-threshold = /bits/ 8 <0x0>; 720 snps,dis_u2_susphy_quirk; 721 snps,dis_u3_susphy_quirk; 722 dr_mode = "host"; 723 }; 724 }; 725 726 intc: interrupt-controller@b000000 { 727 compatible = "qcom,msm-qgic2"; 728 #address-cells = <1>; 729 #size-cells = <1>; 730 interrupt-controller; 731 #interrupt-cells = <3>; 732 reg = <0x0b000000 0x1000>, <0x0b002000 0x1000>; 733 ranges = <0 0xb00a000 0xffd>; 734 735 v2m@0 { 736 compatible = "arm,gic-v2m-frame"; 737 msi-controller; 738 reg = <0x0 0xffd>; 739 }; 740 }; 741 742 watchdog: watchdog@b017000 { 743 compatible = "qcom,kpss-wdt"; 744 reg = <0xb017000 0x1000>; 745 interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>; 746 clocks = <&sleep_clk>; 747 timeout-sec = <30>; 748 }; 749 750 apcs_glb: mailbox@b111000 { 751 compatible = "qcom,ipq8074-apcs-apps-global", 752 "qcom,ipq6018-apcs-apps-global"; 753 reg = <0x0b111000 0x1000>; 754 clocks = <&a53pll>, <&xo>, <&gcc GPLL0>; 755 clock-names = "pll", "xo", "gpll0"; 756 757 #clock-cells = <1>; 758 #mbox-cells = <1>; 759 }; 760 761 a53pll: clock@b116000 { 762 compatible = "qcom,ipq8074-a53pll"; 763 reg = <0x0b116000 0x40>; 764 #clock-cells = <0>; 765 clocks = <&xo>; 766 clock-names = "xo"; 767 }; 768 769 timer@b120000 { 770 #address-cells = <1>; 771 #size-cells = <1>; 772 ranges; 773 compatible = "arm,armv7-timer-mem"; 774 reg = <0x0b120000 0x1000>; 775 776 frame@b120000 { 777 frame-number = <0>; 778 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 779 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 780 reg = <0x0b121000 0x1000>, 781 <0x0b122000 0x1000>; 782 }; 783 784 frame@b123000 { 785 frame-number = <1>; 786 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 787 reg = <0x0b123000 0x1000>; 788 status = "disabled"; 789 }; 790 791 frame@b124000 { 792 frame-number = <2>; 793 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 794 reg = <0x0b124000 0x1000>; 795 status = "disabled"; 796 }; 797 798 frame@b125000 { 799 frame-number = <3>; 800 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 801 reg = <0x0b125000 0x1000>; 802 status = "disabled"; 803 }; 804 805 frame@b126000 { 806 frame-number = <4>; 807 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 808 reg = <0x0b126000 0x1000>; 809 status = "disabled"; 810 }; 811 812 frame@b127000 { 813 frame-number = <5>; 814 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 815 reg = <0x0b127000 0x1000>; 816 status = "disabled"; 817 }; 818 819 frame@b128000 { 820 frame-number = <6>; 821 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 822 reg = <0x0b128000 0x1000>; 823 status = "disabled"; 824 }; 825 }; 826 827 pcie1: pcie@10000000 { 828 compatible = "qcom,pcie-ipq8074"; 829 reg = <0x10000000 0xf1d>, 830 <0x10000f20 0xa8>, 831 <0x00088000 0x2000>, 832 <0x10100000 0x1000>; 833 reg-names = "dbi", "elbi", "parf", "config"; 834 device_type = "pci"; 835 linux,pci-domain = <1>; 836 bus-range = <0x00 0xff>; 837 num-lanes = <1>; 838 max-link-speed = <2>; 839 #address-cells = <3>; 840 #size-cells = <2>; 841 842 phys = <&pcie_qmp1>; 843 phy-names = "pciephy"; 844 845 ranges = <0x81000000 0x0 0x00000000 0x10200000 0x0 0x10000>, /* I/O */ 846 <0x82000000 0x0 0x10220000 0x10220000 0x0 0xfde0000>; /* MEM */ 847 848 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 849 interrupt-names = "msi"; 850 #interrupt-cells = <1>; 851 interrupt-map-mask = <0 0 0 0x7>; 852 interrupt-map = <0 0 0 1 &intc 0 0 142 853 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 854 <0 0 0 2 &intc 0 0 143 855 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 856 <0 0 0 3 &intc 0 0 144 857 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 858 <0 0 0 4 &intc 0 0 145 859 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 860 861 clocks = <&gcc GCC_SYS_NOC_PCIE1_AXI_CLK>, 862 <&gcc GCC_PCIE1_AXI_M_CLK>, 863 <&gcc GCC_PCIE1_AXI_S_CLK>, 864 <&gcc GCC_PCIE1_AHB_CLK>, 865 <&gcc GCC_PCIE1_AUX_CLK>; 866 clock-names = "iface", 867 "axi_m", 868 "axi_s", 869 "ahb", 870 "aux"; 871 resets = <&gcc GCC_PCIE1_PIPE_ARES>, 872 <&gcc GCC_PCIE1_SLEEP_ARES>, 873 <&gcc GCC_PCIE1_CORE_STICKY_ARES>, 874 <&gcc GCC_PCIE1_AXI_MASTER_ARES>, 875 <&gcc GCC_PCIE1_AXI_SLAVE_ARES>, 876 <&gcc GCC_PCIE1_AHB_ARES>, 877 <&gcc GCC_PCIE1_AXI_MASTER_STICKY_ARES>; 878 reset-names = "pipe", 879 "sleep", 880 "sticky", 881 "axi_m", 882 "axi_s", 883 "ahb", 884 "axi_m_sticky"; 885 status = "disabled"; 886 887 pcie@0 { 888 device_type = "pci"; 889 reg = <0x0 0x0 0x0 0x0 0x0>; 890 bus-range = <0x01 0xff>; 891 892 #address-cells = <3>; 893 #size-cells = <2>; 894 ranges; 895 }; 896 }; 897 898 pcie0: pcie@20000000 { 899 compatible = "qcom,pcie-ipq8074-gen3"; 900 reg = <0x20000000 0xf1d>, 901 <0x20000f20 0xa8>, 902 <0x20001000 0x1000>, 903 <0x00080000 0x4000>, 904 <0x20100000 0x1000>; 905 reg-names = "dbi", "elbi", "atu", "parf", "config"; 906 device_type = "pci"; 907 linux,pci-domain = <0>; 908 bus-range = <0x00 0xff>; 909 num-lanes = <1>; 910 max-link-speed = <3>; 911 #address-cells = <3>; 912 #size-cells = <2>; 913 914 phys = <&pcie_qmp0>; 915 phy-names = "pciephy"; 916 917 ranges = <0x81000000 0x0 0x00000000 0x20200000 0x0 0x10000>, /* I/O */ 918 <0x82000000 0x0 0x20220000 0x20220000 0x0 0xfde0000>; /* MEM */ 919 920 interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>; 921 interrupt-names = "msi"; 922 #interrupt-cells = <1>; 923 interrupt-map-mask = <0 0 0 0x7>; 924 interrupt-map = <0 0 0 1 &intc 0 0 75 925 IRQ_TYPE_LEVEL_HIGH>, /* int_a */ 926 <0 0 0 2 &intc 0 0 78 927 IRQ_TYPE_LEVEL_HIGH>, /* int_b */ 928 <0 0 0 3 &intc 0 0 79 929 IRQ_TYPE_LEVEL_HIGH>, /* int_c */ 930 <0 0 0 4 &intc 0 0 83 931 IRQ_TYPE_LEVEL_HIGH>; /* int_d */ 932 933 clocks = <&gcc GCC_SYS_NOC_PCIE0_AXI_CLK>, 934 <&gcc GCC_PCIE0_AXI_M_CLK>, 935 <&gcc GCC_PCIE0_AXI_S_CLK>, 936 <&gcc GCC_PCIE0_AXI_S_BRIDGE_CLK>, 937 <&gcc GCC_PCIE0_RCHNG_CLK>; 938 clock-names = "iface", 939 "axi_m", 940 "axi_s", 941 "axi_bridge", 942 "rchng"; 943 944 resets = <&gcc GCC_PCIE0_PIPE_ARES>, 945 <&gcc GCC_PCIE0_SLEEP_ARES>, 946 <&gcc GCC_PCIE0_CORE_STICKY_ARES>, 947 <&gcc GCC_PCIE0_AXI_MASTER_ARES>, 948 <&gcc GCC_PCIE0_AXI_SLAVE_ARES>, 949 <&gcc GCC_PCIE0_AHB_ARES>, 950 <&gcc GCC_PCIE0_AXI_MASTER_STICKY_ARES>, 951 <&gcc GCC_PCIE0_AXI_SLAVE_STICKY_ARES>; 952 reset-names = "pipe", 953 "sleep", 954 "sticky", 955 "axi_m", 956 "axi_s", 957 "ahb", 958 "axi_m_sticky", 959 "axi_s_sticky"; 960 status = "disabled"; 961 962 pcie@0 { 963 device_type = "pci"; 964 reg = <0x0 0x0 0x0 0x0 0x0>; 965 bus-range = <0x01 0xff>; 966 967 #address-cells = <3>; 968 #size-cells = <2>; 969 ranges; 970 }; 971 }; 972 }; 973 974 timer { 975 compatible = "arm,armv8-timer"; 976 interrupts = <GIC_PPI 2 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 977 <GIC_PPI 3 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 978 <GIC_PPI 4 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 979 <GIC_PPI 1 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 980 }; 981 982 thermal-zones { 983 nss-top-thermal { 984 polling-delay-passive = <250>; 985 polling-delay = <1000>; 986 987 thermal-sensors = <&tsens 4>; 988 989 trips { 990 nss-top-crit { 991 temperature = <110000>; 992 hysteresis = <1000>; 993 type = "critical"; 994 }; 995 }; 996 }; 997 998 nss0-thermal { 999 polling-delay-passive = <250>; 1000 polling-delay = <1000>; 1001 1002 thermal-sensors = <&tsens 5>; 1003 1004 trips { 1005 nss-0-crit { 1006 temperature = <110000>; 1007 hysteresis = <1000>; 1008 type = "critical"; 1009 }; 1010 }; 1011 }; 1012 1013 nss1-thermal { 1014 polling-delay-passive = <250>; 1015 polling-delay = <1000>; 1016 1017 thermal-sensors = <&tsens 6>; 1018 1019 trips { 1020 nss-1-crit { 1021 temperature = <110000>; 1022 hysteresis = <1000>; 1023 type = "critical"; 1024 }; 1025 }; 1026 }; 1027 1028 wcss-phya0-thermal { 1029 polling-delay-passive = <250>; 1030 polling-delay = <1000>; 1031 1032 thermal-sensors = <&tsens 7>; 1033 1034 trips { 1035 wcss-phya0-crit { 1036 temperature = <110000>; 1037 hysteresis = <1000>; 1038 type = "critical"; 1039 }; 1040 }; 1041 }; 1042 1043 wcss-phya1-thermal { 1044 polling-delay-passive = <250>; 1045 polling-delay = <1000>; 1046 1047 thermal-sensors = <&tsens 8>; 1048 1049 trips { 1050 wcss-phya1-crit { 1051 temperature = <110000>; 1052 hysteresis = <1000>; 1053 type = "critical"; 1054 }; 1055 }; 1056 }; 1057 1058 cpu0_thermal: cpu0-thermal { 1059 polling-delay-passive = <250>; 1060 polling-delay = <1000>; 1061 1062 thermal-sensors = <&tsens 9>; 1063 1064 trips { 1065 cpu0-crit { 1066 temperature = <110000>; 1067 hysteresis = <1000>; 1068 type = "critical"; 1069 }; 1070 }; 1071 }; 1072 1073 cpu1_thermal: cpu1-thermal { 1074 polling-delay-passive = <250>; 1075 polling-delay = <1000>; 1076 1077 thermal-sensors = <&tsens 10>; 1078 1079 trips { 1080 cpu1-crit { 1081 temperature = <110000>; 1082 hysteresis = <1000>; 1083 type = "critical"; 1084 }; 1085 }; 1086 }; 1087 1088 cpu2_thermal: cpu2-thermal { 1089 polling-delay-passive = <250>; 1090 polling-delay = <1000>; 1091 1092 thermal-sensors = <&tsens 11>; 1093 1094 trips { 1095 cpu2-crit { 1096 temperature = <110000>; 1097 hysteresis = <1000>; 1098 type = "critical"; 1099 }; 1100 }; 1101 }; 1102 1103 cpu3_thermal: cpu3-thermal { 1104 polling-delay-passive = <250>; 1105 polling-delay = <1000>; 1106 1107 thermal-sensors = <&tsens 12>; 1108 1109 trips { 1110 cpu3-crit { 1111 temperature = <110000>; 1112 hysteresis = <1000>; 1113 type = "critical"; 1114 }; 1115 }; 1116 }; 1117 1118 cluster_thermal: cluster-thermal { 1119 polling-delay-passive = <250>; 1120 polling-delay = <1000>; 1121 1122 thermal-sensors = <&tsens 13>; 1123 1124 trips { 1125 cluster-crit { 1126 temperature = <110000>; 1127 hysteresis = <1000>; 1128 type = "critical"; 1129 }; 1130 }; 1131 }; 1132 1133 wcss-phyb0-thermal { 1134 polling-delay-passive = <250>; 1135 polling-delay = <1000>; 1136 1137 thermal-sensors = <&tsens 14>; 1138 1139 trips { 1140 wcss-phyb0-crit { 1141 temperature = <110000>; 1142 hysteresis = <1000>; 1143 type = "critical"; 1144 }; 1145 }; 1146 }; 1147 1148 wcss-phyb1-thermal { 1149 polling-delay-passive = <250>; 1150 polling-delay = <1000>; 1151 1152 thermal-sensors = <&tsens 15>; 1153 1154 trips { 1155 wcss-phyb1-crit { 1156 temperature = <110000>; 1157 hysteresis = <1000>; 1158 type = "critical"; 1159 }; 1160 }; 1161 }; 1162 }; 1163}; 1164