1// SPDX-License-Identifier: BSD-3-Clause 2/* 3 * Copyright (c) 2020, The Linux Foundation. All rights reserved. 4 */ 5 6/dts-v1/; 7 8#include <dt-bindings/interrupt-controller/arm-gic.h> 9#include <dt-bindings/clock/qcom,dsi-phy-28nm.h> 10#include <dt-bindings/clock/qcom,gcc-msm8974.h> 11#include <dt-bindings/clock/qcom,mmcc-msm8974.h> 12#include <dt-bindings/clock/qcom,rpmcc.h> 13#include <dt-bindings/gpio/gpio.h> 14#include <dt-bindings/power/qcom-rpmpd.h> 15#include <dt-bindings/reset/qcom,gcc-msm8974.h> 16#include <dt-bindings/thermal/thermal.h> 17 18/ { 19 #address-cells = <1>; 20 #size-cells = <1>; 21 interrupt-parent = <&intc>; 22 23 chosen { }; 24 25 clocks { 26 xo_board: xo_board { 27 compatible = "fixed-clock"; 28 #clock-cells = <0>; 29 clock-frequency = <19200000>; 30 }; 31 32 sleep_clk: sleep_clk { 33 compatible = "fixed-clock"; 34 #clock-cells = <0>; 35 clock-frequency = <32768>; 36 }; 37 }; 38 39 cpus { 40 #address-cells = <1>; 41 #size-cells = <0>; 42 43 cpu0: cpu@0 { 44 compatible = "arm,cortex-a7"; 45 enable-method = "qcom,msm8226-smp"; 46 device_type = "cpu"; 47 reg = <0>; 48 next-level-cache = <&l2>; 49 clocks = <&apcs>; 50 operating-points-v2 = <&cpu_opp_table>; 51 qcom,acc = <&acc0>; 52 qcom,saw = <&saw0>; 53 #cooling-cells = <2>; 54 }; 55 56 cpu1: cpu@1 { 57 compatible = "arm,cortex-a7"; 58 enable-method = "qcom,msm8226-smp"; 59 device_type = "cpu"; 60 reg = <1>; 61 next-level-cache = <&l2>; 62 clocks = <&apcs>; 63 operating-points-v2 = <&cpu_opp_table>; 64 qcom,acc = <&acc1>; 65 qcom,saw = <&saw1>; 66 #cooling-cells = <2>; 67 }; 68 69 cpu2: cpu@2 { 70 compatible = "arm,cortex-a7"; 71 enable-method = "qcom,msm8226-smp"; 72 device_type = "cpu"; 73 reg = <2>; 74 next-level-cache = <&l2>; 75 clocks = <&apcs>; 76 operating-points-v2 = <&cpu_opp_table>; 77 qcom,acc = <&acc2>; 78 qcom,saw = <&saw2>; 79 #cooling-cells = <2>; 80 }; 81 82 cpu3: cpu@3 { 83 compatible = "arm,cortex-a7"; 84 enable-method = "qcom,msm8226-smp"; 85 device_type = "cpu"; 86 reg = <3>; 87 next-level-cache = <&l2>; 88 clocks = <&apcs>; 89 operating-points-v2 = <&cpu_opp_table>; 90 qcom,acc = <&acc3>; 91 qcom,saw = <&saw3>; 92 #cooling-cells = <2>; 93 }; 94 95 l2: l2-cache { 96 compatible = "cache"; 97 cache-level = <2>; 98 cache-unified; 99 }; 100 }; 101 102 firmware { 103 scm { 104 compatible = "qcom,scm-msm8226", "qcom,scm"; 105 clocks = <&gcc GCC_CE1_CLK>, <&gcc GCC_CE1_AXI_CLK>, <&gcc GCC_CE1_AHB_CLK>; 106 clock-names = "core", "bus", "iface"; 107 }; 108 }; 109 110 memory@0 { 111 device_type = "memory"; 112 reg = <0x0 0x0>; 113 }; 114 115 cpu_opp_table: opp-table-cpu { 116 compatible = "operating-points-v2"; 117 opp-shared; 118 119 opp-300000000 { 120 opp-hz = /bits/ 64 <300000000>; 121 }; 122 123 opp-384000000 { 124 opp-hz = /bits/ 64 <384000000>; 125 }; 126 127 opp-600000000 { 128 opp-hz = /bits/ 64 <600000000>; 129 }; 130 131 opp-787200000 { 132 opp-hz = /bits/ 64 <787200000>; 133 }; 134 135 /* Higher CPU frequencies need speedbin support */ 136 }; 137 138 pmu { 139 compatible = "arm,cortex-a7-pmu"; 140 interrupts = <GIC_PPI 7 (GIC_CPU_MASK_SIMPLE(4) | 141 IRQ_TYPE_LEVEL_HIGH)>; 142 }; 143 144 rpm: remoteproc { 145 compatible = "qcom,msm8226-rpm-proc", "qcom,rpm-proc"; 146 147 master-stats { 148 compatible = "qcom,rpm-master-stats"; 149 qcom,rpm-msg-ram = <&apss_master_stats>, 150 <&mpss_master_stats>, 151 <&lpss_master_stats>, 152 <&pronto_master_stats>; 153 qcom,master-names = "APSS", 154 "MPSS", 155 "LPSS", 156 "PRONTO"; 157 }; 158 159 smd-edge { 160 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 161 mboxes = <&apcs 0>; 162 qcom,smd-edge = <15>; 163 164 rpm_requests: rpm-requests { 165 compatible = "qcom,rpm-msm8226", "qcom,smd-rpm"; 166 qcom,smd-channels = "rpm_requests"; 167 168 rpmcc: clock-controller { 169 compatible = "qcom,rpmcc-msm8226", "qcom,rpmcc"; 170 #clock-cells = <1>; 171 clocks = <&xo_board>; 172 clock-names = "xo"; 173 }; 174 175 rpmpd: power-controller { 176 compatible = "qcom,msm8226-rpmpd"; 177 #power-domain-cells = <1>; 178 operating-points-v2 = <&rpmpd_opp_table>; 179 180 rpmpd_opp_table: opp-table { 181 compatible = "operating-points-v2"; 182 183 rpmpd_opp_ret: opp1 { 184 opp-level = <1>; 185 }; 186 rpmpd_opp_svs_krait: opp2 { 187 opp-level = <2>; 188 }; 189 rpmpd_opp_svs_soc: opp3 { 190 opp-level = <3>; 191 }; 192 rpmpd_opp_nom: opp4 { 193 opp-level = <4>; 194 }; 195 rpmpd_opp_turbo: opp5 { 196 opp-level = <5>; 197 }; 198 rpmpd_opp_super_turbo: opp6 { 199 opp-level = <6>; 200 }; 201 }; 202 }; 203 }; 204 }; 205 }; 206 207 reserved-memory { 208 #address-cells = <1>; 209 #size-cells = <1>; 210 ranges; 211 212 smem_region: smem@3000000 { 213 reg = <0x3000000 0x100000>; 214 no-map; 215 }; 216 217 mpss_region: mpss@8000000 { 218 reg = <0x08000000 0x5100000>; 219 no-map; 220 status = "disabled"; 221 }; 222 223 mba_region: mba@d100000 { 224 reg = <0x0d100000 0x100000>; 225 no-map; 226 status = "disabled"; 227 }; 228 229 adsp_region: adsp@dc00000 { 230 reg = <0x0dc00000 0x1900000>; 231 no-map; 232 }; 233 }; 234 235 smem { 236 compatible = "qcom,smem"; 237 238 memory-region = <&smem_region>; 239 qcom,rpm-msg-ram = <&rpm_msg_ram>; 240 241 hwlocks = <&tcsr_mutex 3>; 242 }; 243 244 smp2p-adsp { 245 compatible = "qcom,smp2p"; 246 qcom,smem = <443>, <429>; 247 248 interrupt-parent = <&intc>; 249 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 250 251 mboxes = <&apcs 10>; 252 253 qcom,local-pid = <0>; 254 qcom,remote-pid = <2>; 255 256 adsp_smp2p_out: master-kernel { 257 qcom,entry-name = "master-kernel"; 258 #qcom,smem-state-cells = <1>; 259 }; 260 261 adsp_smp2p_in: slave-kernel { 262 qcom,entry-name = "slave-kernel"; 263 264 interrupt-controller; 265 #interrupt-cells = <2>; 266 }; 267 }; 268 269 smp2p-modem { 270 compatible = "qcom,smp2p"; 271 qcom,smem = <435>, <428>; 272 273 interrupt-parent = <&intc>; 274 interrupts = <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>; 275 276 mboxes = <&apcs 14>; 277 278 qcom,local-pid = <0>; 279 qcom,remote-pid = <1>; 280 281 modem_smp2p_out: master-kernel { 282 qcom,entry-name = "master-kernel"; 283 #qcom,smem-state-cells = <1>; 284 }; 285 286 modem_smp2p_in: slave-kernel { 287 qcom,entry-name = "slave-kernel"; 288 289 interrupt-controller; 290 #interrupt-cells = <2>; 291 }; 292 }; 293 294 smsm { 295 compatible = "qcom,smsm"; 296 #address-cells = <1>; 297 #size-cells = <0>; 298 299 mboxes = <0>, <&apcs 13>, <&apcs 9>, <&apcs 19>; 300 301 apps_smsm: apps@0 { 302 reg = <0>; 303 #qcom,smem-state-cells = <1>; 304 }; 305 306 modem_smsm: modem@1 { 307 reg = <1>; 308 interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>; 309 interrupt-controller; 310 #interrupt-cells = <2>; 311 }; 312 313 adsp_smsm: adsp@2 { 314 reg = <2>; 315 interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>; 316 interrupt-controller; 317 #interrupt-cells = <2>; 318 }; 319 320 wcnss_smsm: wcnss@7 { 321 reg = <7>; 322 interrupts = <GIC_SPI 144 IRQ_TYPE_EDGE_RISING>; 323 interrupt-controller; 324 #interrupt-cells = <2>; 325 }; 326 }; 327 328 soc: soc { 329 compatible = "simple-bus"; 330 #address-cells = <1>; 331 #size-cells = <1>; 332 ranges; 333 334 intc: interrupt-controller@f9000000 { 335 compatible = "qcom,msm-qgic2"; 336 reg = <0xf9000000 0x1000>, 337 <0xf9002000 0x1000>; 338 interrupt-controller; 339 #interrupt-cells = <3>; 340 }; 341 342 apcs: mailbox@f9011000 { 343 compatible = "qcom,msm8226-apcs-kpss-global", 344 "qcom,msm8916-apcs-kpss-global", "syscon"; 345 reg = <0xf9011000 0x1000>; 346 #mbox-cells = <1>; 347 clocks = <&a7pll>, <&gcc GPLL0_VOTE>; 348 clock-names = "pll", "aux"; 349 #clock-cells = <0>; 350 }; 351 352 a7pll: clock@f9016000 { 353 compatible = "qcom,msm8226-a7pll"; 354 reg = <0xf9016000 0x40>; 355 #clock-cells = <0>; 356 clocks = <&xo_board>; 357 clock-names = "xo"; 358 operating-points-v2 = <&a7pll_opp_table>; 359 360 a7pll_opp_table: opp-table { 361 compatible = "operating-points-v2"; 362 363 opp-768000000 { 364 opp-hz = /bits/ 64 <768000000>; 365 }; 366 367 opp-787200000 { 368 opp-hz = /bits/ 64 <787200000>; 369 }; 370 371 opp-998400000 { 372 opp-hz = /bits/ 64 <998400000>; 373 }; 374 375 opp-1094400000 { 376 opp-hz = /bits/ 64 <1094400000>; 377 }; 378 379 opp-1190400000 { 380 opp-hz = /bits/ 64 <1190400000>; 381 }; 382 383 opp-1305600000 { 384 opp-hz = /bits/ 64 <1305600000>; 385 }; 386 387 opp-1344000000 { 388 opp-hz = /bits/ 64 <1344000000>; 389 }; 390 391 opp-1401600000 { 392 opp-hz = /bits/ 64 <1401600000>; 393 }; 394 395 opp-1497600000 { 396 opp-hz = /bits/ 64 <1497600000>; 397 }; 398 399 opp-1593600000 { 400 opp-hz = /bits/ 64 <1593600000>; 401 }; 402 403 opp-1689600000 { 404 opp-hz = /bits/ 64 <1689600000>; 405 }; 406 407 opp-1785600000 { 408 opp-hz = /bits/ 64 <1785600000>; 409 }; 410 }; 411 }; 412 413 saw_l2: power-manager@f9012000 { 414 compatible = "qcom,msm8226-saw2-v2.1-l2", "qcom,saw2"; 415 reg = <0xf9012000 0x1000>; 416 }; 417 418 watchdog@f9017000 { 419 compatible = "qcom,apss-wdt-msm8226", "qcom,kpss-wdt"; 420 reg = <0xf9017000 0x1000>; 421 interrupts = <GIC_SPI 3 IRQ_TYPE_EDGE_RISING>, 422 <GIC_SPI 4 IRQ_TYPE_EDGE_RISING>; 423 clocks = <&sleep_clk>; 424 }; 425 426 timer@f9020000 { 427 compatible = "arm,armv7-timer-mem"; 428 reg = <0xf9020000 0x1000>; 429 #address-cells = <1>; 430 #size-cells = <1>; 431 ranges; 432 433 frame@f9021000 { 434 frame-number = <0>; 435 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 436 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 437 reg = <0xf9021000 0x1000>, 438 <0xf9022000 0x1000>; 439 }; 440 441 frame@f9023000 { 442 frame-number = <1>; 443 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 444 reg = <0xf9023000 0x1000>; 445 status = "disabled"; 446 }; 447 448 frame@f9024000 { 449 frame-number = <2>; 450 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 451 reg = <0xf9024000 0x1000>; 452 status = "disabled"; 453 }; 454 455 frame@f9025000 { 456 frame-number = <3>; 457 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 458 reg = <0xf9025000 0x1000>; 459 status = "disabled"; 460 }; 461 462 frame@f9026000 { 463 frame-number = <4>; 464 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 465 reg = <0xf9026000 0x1000>; 466 status = "disabled"; 467 }; 468 469 frame@f9027000 { 470 frame-number = <5>; 471 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 472 reg = <0xf9027000 0x1000>; 473 status = "disabled"; 474 }; 475 476 frame@f9028000 { 477 frame-number = <6>; 478 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 479 reg = <0xf9028000 0x1000>; 480 status = "disabled"; 481 }; 482 }; 483 484 acc0: power-manager@f9088000 { 485 compatible = "qcom,kpss-acc-v2"; 486 reg = <0xf9088000 0x1000>, <0xf9008000 0x1000>; 487 }; 488 489 saw0: power-manager@f9089000 { 490 compatible = "qcom,msm8226-saw2-v2.1-cpu", "qcom,saw2"; 491 reg = <0xf9089000 0x1000>; 492 }; 493 494 acc1: power-manager@f9098000 { 495 compatible = "qcom,kpss-acc-v2"; 496 reg = <0xf9098000 0x1000>, <0xf9008000 0x1000>; 497 }; 498 499 saw1: power-manager@f9099000 { 500 compatible = "qcom,msm8226-saw2-v2.1-cpu", "qcom,saw2"; 501 reg = <0xf9099000 0x1000>; 502 }; 503 504 acc2: power-manager@f90a8000 { 505 compatible = "qcom,kpss-acc-v2"; 506 reg = <0xf90a8000 0x1000>, <0xf9008000 0x1000>; 507 }; 508 509 saw2: power-manager@f90a9000 { 510 compatible = "qcom,msm8226-saw2-v2.1-cpu", "qcom,saw2"; 511 reg = <0xf90a9000 0x1000>; 512 }; 513 514 acc3: power-manager@f90b8000 { 515 compatible = "qcom,kpss-acc-v2"; 516 reg = <0xf90b8000 0x1000>, <0xf9008000 0x1000>; 517 }; 518 519 saw3: power-manager@f90b9000 { 520 compatible = "qcom,msm8226-saw2-v2.1-cpu", "qcom,saw2"; 521 reg = <0xf90b9000 0x1000>; 522 }; 523 524 sdhc_1: mmc@f9824900 { 525 compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4"; 526 reg = <0xf9824900 0x11c>, <0xf9824000 0x800>; 527 reg-names = "hc", "core"; 528 interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>, 529 <GIC_SPI 138 IRQ_TYPE_LEVEL_HIGH>; 530 interrupt-names = "hc_irq", "pwr_irq"; 531 clocks = <&gcc GCC_SDCC1_AHB_CLK>, 532 <&gcc GCC_SDCC1_APPS_CLK>, 533 <&rpmcc RPM_SMD_XO_CLK_SRC>; 534 clock-names = "iface", "core", "xo"; 535 pinctrl-names = "default"; 536 pinctrl-0 = <&sdhc1_default_state>; 537 status = "disabled"; 538 }; 539 540 sdhc_3: mmc@f9864900 { 541 compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4"; 542 reg = <0xf9864900 0x11c>, <0xf9864000 0x800>; 543 reg-names = "hc", "core"; 544 interrupts = <GIC_SPI 127 IRQ_TYPE_LEVEL_HIGH>, 545 <GIC_SPI 224 IRQ_TYPE_LEVEL_HIGH>; 546 interrupt-names = "hc_irq", "pwr_irq"; 547 clocks = <&gcc GCC_SDCC3_AHB_CLK>, 548 <&gcc GCC_SDCC3_APPS_CLK>, 549 <&rpmcc RPM_SMD_XO_CLK_SRC>; 550 clock-names = "iface", "core", "xo"; 551 pinctrl-names = "default"; 552 pinctrl-0 = <&sdhc3_default_state>; 553 status = "disabled"; 554 }; 555 556 sdhc_2: mmc@f98a4900 { 557 compatible = "qcom,msm8226-sdhci", "qcom,sdhci-msm-v4"; 558 reg = <0xf98a4900 0x11c>, <0xf98a4000 0x800>; 559 reg-names = "hc", "core"; 560 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 561 <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>; 562 interrupt-names = "hc_irq", "pwr_irq"; 563 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 564 <&gcc GCC_SDCC2_APPS_CLK>, 565 <&rpmcc RPM_SMD_XO_CLK_SRC>; 566 clock-names = "iface", "core", "xo"; 567 pinctrl-names = "default"; 568 pinctrl-0 = <&sdhc2_default_state>; 569 status = "disabled"; 570 }; 571 572 blsp1_uart1: serial@f991d000 { 573 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 574 reg = <0xf991d000 0x1000>; 575 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 576 clocks = <&gcc GCC_BLSP1_UART1_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 577 clock-names = "core", "iface"; 578 status = "disabled"; 579 }; 580 581 blsp1_uart2: serial@f991e000 { 582 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 583 reg = <0xf991e000 0x1000>; 584 interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 585 clocks = <&gcc GCC_BLSP1_UART2_APPS_CLK>, 586 <&gcc GCC_BLSP1_AHB_CLK>; 587 clock-names = "core", 588 "iface"; 589 status = "disabled"; 590 }; 591 592 blsp1_uart3: serial@f991f000 { 593 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 594 reg = <0xf991f000 0x1000>; 595 interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 596 clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 597 clock-names = "core", "iface"; 598 status = "disabled"; 599 }; 600 601 blsp1_uart4: serial@f9920000 { 602 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 603 reg = <0xf9920000 0x1000>; 604 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 605 clocks = <&gcc GCC_BLSP1_UART4_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 606 clock-names = "core", "iface"; 607 status = "disabled"; 608 }; 609 610 blsp1_i2c1: i2c@f9923000 { 611 compatible = "qcom,i2c-qup-v2.1.1"; 612 reg = <0xf9923000 0x1000>; 613 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 614 clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 615 clock-names = "core", "iface"; 616 pinctrl-names = "default"; 617 pinctrl-0 = <&blsp1_i2c1_pins>; 618 #address-cells = <1>; 619 #size-cells = <0>; 620 status = "disabled"; 621 }; 622 623 blsp1_i2c2: i2c@f9924000 { 624 compatible = "qcom,i2c-qup-v2.1.1"; 625 reg = <0xf9924000 0x1000>; 626 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 627 clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 628 clock-names = "core", "iface"; 629 pinctrl-names = "default"; 630 pinctrl-0 = <&blsp1_i2c2_pins>; 631 #address-cells = <1>; 632 #size-cells = <0>; 633 status = "disabled"; 634 }; 635 636 blsp1_i2c3: i2c@f9925000 { 637 compatible = "qcom,i2c-qup-v2.1.1"; 638 reg = <0xf9925000 0x1000>; 639 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 640 clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 641 clock-names = "core", "iface"; 642 pinctrl-names = "default"; 643 pinctrl-0 = <&blsp1_i2c3_pins>; 644 #address-cells = <1>; 645 #size-cells = <0>; 646 status = "disabled"; 647 }; 648 649 blsp1_i2c4: i2c@f9926000 { 650 compatible = "qcom,i2c-qup-v2.1.1"; 651 reg = <0xf9926000 0x1000>; 652 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 653 clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 654 clock-names = "core", "iface"; 655 pinctrl-names = "default"; 656 pinctrl-0 = <&blsp1_i2c4_pins>; 657 #address-cells = <1>; 658 #size-cells = <0>; 659 status = "disabled"; 660 }; 661 662 blsp1_i2c5: i2c@f9927000 { 663 compatible = "qcom,i2c-qup-v2.1.1"; 664 reg = <0xf9927000 0x1000>; 665 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 666 clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; 667 clock-names = "core", "iface"; 668 pinctrl-names = "default"; 669 pinctrl-0 = <&blsp1_i2c5_pins>; 670 #address-cells = <1>; 671 #size-cells = <0>; 672 status = "disabled"; 673 }; 674 675 blsp1_i2c6: i2c@f9928000 { 676 compatible = "qcom,i2c-qup-v2.1.1"; 677 reg = <0xf9928000 0x1000>; 678 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 679 clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, 680 <&gcc GCC_BLSP1_AHB_CLK>; 681 clock-names = "core", 682 "iface"; 683 pinctrl-0 = <&blsp1_i2c6_pins>; 684 pinctrl-names = "default"; 685 #address-cells = <1>; 686 #size-cells = <0>; 687 status = "disabled"; 688 }; 689 690 usb: usb@f9a55000 { 691 compatible = "qcom,ci-hdrc"; 692 reg = <0xf9a55000 0x200>, 693 <0xf9a55200 0x200>; 694 interrupts = <GIC_SPI 134 IRQ_TYPE_LEVEL_HIGH>; 695 clocks = <&gcc GCC_USB_HS_AHB_CLK>, 696 <&gcc GCC_USB_HS_SYSTEM_CLK>; 697 clock-names = "iface", "core"; 698 assigned-clocks = <&gcc GCC_USB_HS_SYSTEM_CLK>; 699 assigned-clock-rates = <75000000>; 700 resets = <&gcc GCC_USB_HS_BCR>; 701 reset-names = "core"; 702 phy_type = "ulpi"; 703 dr_mode = "otg"; 704 hnp-disable; 705 srp-disable; 706 adp-disable; 707 ahb-burst-config = <0>; 708 phy-names = "usb-phy"; 709 phys = <&usb_hs_phy>; 710 status = "disabled"; 711 #reset-cells = <1>; 712 713 ulpi { 714 usb_hs_phy: phy { 715 compatible = "qcom,usb-hs-phy-msm8226", 716 "qcom,usb-hs-phy"; 717 #phy-cells = <0>; 718 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 719 <&gcc GCC_USB2A_PHY_SLEEP_CLK>; 720 clock-names = "ref", "sleep"; 721 resets = <&gcc GCC_USB2A_PHY_BCR>, <&usb 0>; 722 reset-names = "phy", "por"; 723 qcom,init-seq = /bits/ 8 <0x0 0x44 724 0x1 0x68 0x2 0x24 0x3 0x13>; 725 }; 726 }; 727 }; 728 729 rng@f9bff000 { 730 compatible = "qcom,prng"; 731 reg = <0xf9bff000 0x200>; 732 clocks = <&gcc GCC_PRNG_AHB_CLK>; 733 clock-names = "core"; 734 }; 735 736 sram@fc190000 { 737 compatible = "qcom,msm8226-rpm-stats"; 738 reg = <0xfc190000 0x10000>; 739 }; 740 741 gcc: clock-controller@fc400000 { 742 compatible = "qcom,gcc-msm8226"; 743 reg = <0xfc400000 0x4000>; 744 #clock-cells = <1>; 745 #reset-cells = <1>; 746 #power-domain-cells = <1>; 747 748 clocks = <&xo_board>, 749 <&sleep_clk>; 750 clock-names = "xo", 751 "sleep_clk"; 752 }; 753 754 rpm_msg_ram: sram@fc428000 { 755 compatible = "qcom,rpm-msg-ram"; 756 reg = <0xfc428000 0x4000>; 757 758 #address-cells = <1>; 759 #size-cells = <1>; 760 ranges = <0 0xfc428000 0x4000>; 761 762 apss_master_stats: sram@150 { 763 reg = <0x150 0x14>; 764 }; 765 766 mpss_master_stats: sram@b50 { 767 reg = <0xb50 0x14>; 768 }; 769 770 lpss_master_stats: sram@1550 { 771 reg = <0x1550 0x14>; 772 }; 773 774 pronto_master_stats: sram@1f50 { 775 reg = <0x1f50 0x14>; 776 }; 777 }; 778 779 tsens: thermal-sensor@fc4a9000 { 780 compatible = "qcom,msm8226-tsens", "qcom,tsens-v0_1"; 781 reg = <0xfc4a9000 0x1000>, /* TM */ 782 <0xfc4a8000 0x1000>; /* SROT */ 783 nvmem-cells = <&tsens_mode>, 784 <&tsens_base1>, <&tsens_base2>, 785 <&tsens_s0_p1>, <&tsens_s0_p2>, 786 <&tsens_s1_p1>, <&tsens_s1_p2>, 787 <&tsens_s2_p1>, <&tsens_s2_p2>, 788 <&tsens_s3_p1>, <&tsens_s3_p2>, 789 <&tsens_s4_p1>, <&tsens_s4_p2>, 790 <&tsens_s5_p1>, <&tsens_s5_p2>, 791 <&tsens_s6_p1>, <&tsens_s6_p2>; 792 nvmem-cell-names = "mode", 793 "base1", "base2", 794 "s0_p1", "s0_p2", 795 "s1_p1", "s1_p2", 796 "s2_p1", "s2_p2", 797 "s3_p1", "s3_p2", 798 "s4_p1", "s4_p2", 799 "s5_p1", "s5_p2", 800 "s6_p1", "s6_p2"; 801 #qcom,sensors = <6>; 802 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>; 803 interrupt-names = "uplow"; 804 #thermal-sensor-cells = <1>; 805 }; 806 807 restart@fc4ab000 { 808 compatible = "qcom,pshold"; 809 reg = <0xfc4ab000 0x4>; 810 }; 811 812 qfprom: efuse@fc4bc000 { 813 compatible = "qcom,msm8226-qfprom", "qcom,qfprom"; 814 reg = <0xfc4bc000 0x1000>; 815 #address-cells = <1>; 816 #size-cells = <1>; 817 818 tsens_base1: base1@1c1 { 819 reg = <0x1c1 0x2>; 820 bits = <5 8>; 821 }; 822 823 tsens_s0_p1: s0-p1@1c2 { 824 reg = <0x1c2 0x2>; 825 bits = <5 6>; 826 }; 827 828 tsens_s1_p1: s1-p1@1c4 { 829 reg = <0x1c4 0x1>; 830 bits = <0 6>; 831 }; 832 833 tsens_s2_p1: s2-p1@1c4 { 834 reg = <0x1c4 0x2>; 835 bits = <6 6>; 836 }; 837 838 tsens_s3_p1: s3-p1@1c5 { 839 reg = <0x1c5 0x2>; 840 bits = <4 6>; 841 }; 842 843 tsens_s4_p1: s4-p1@1c6 { 844 reg = <0x1c6 0x1>; 845 bits = <2 6>; 846 }; 847 848 tsens_s5_p1: s5-p1@1c7 { 849 reg = <0x1c7 0x1>; 850 bits = <0 6>; 851 }; 852 853 tsens_s6_p1: s6-p1@1ca { 854 reg = <0x1ca 0x2>; 855 bits = <4 6>; 856 }; 857 858 tsens_base2: base2@1cc { 859 reg = <0x1cc 0x1>; 860 bits = <0 8>; 861 }; 862 863 tsens_s0_p2: s0-p2@1cd { 864 reg = <0x1cd 0x1>; 865 bits = <0 6>; 866 }; 867 868 tsens_s1_p2: s1-p2@1cd { 869 reg = <0x1cd 0x2>; 870 bits = <6 6>; 871 }; 872 873 tsens_s2_p2: s2-p2@1ce { 874 reg = <0x1ce 0x2>; 875 bits = <4 6>; 876 }; 877 878 tsens_s3_p2: s3-p2@1cf { 879 reg = <0x1cf 0x1>; 880 bits = <2 6>; 881 }; 882 883 tsens_s4_p2: s4-p2@446 { 884 reg = <0x446 0x2>; 885 bits = <4 6>; 886 }; 887 888 tsens_s5_p2: s5-p2@447 { 889 reg = <0x447 0x1>; 890 bits = <2 6>; 891 }; 892 893 tsens_s6_p2: s6-p2@44e { 894 reg = <0x44e 0x1>; 895 bits = <1 6>; 896 }; 897 898 tsens_mode: mode@44f { 899 reg = <0x44f 0x1>; 900 bits = <5 3>; 901 }; 902 }; 903 904 spmi_bus: spmi@fc4cf000 { 905 compatible = "qcom,spmi-pmic-arb"; 906 reg-names = "core", "intr", "cnfg"; 907 reg = <0xfc4cf000 0x1000>, 908 <0xfc4cb000 0x1000>, 909 <0xfc4ca000 0x1000>; 910 interrupt-names = "periph_irq"; 911 interrupts = <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>; 912 qcom,ee = <0>; 913 qcom,channel = <0>; 914 #address-cells = <2>; 915 #size-cells = <0>; 916 interrupt-controller; 917 #interrupt-cells = <4>; 918 }; 919 920 bam_dmux_dma: dma-controller@fc834000 { 921 compatible = "qcom,bam-v1.4.0"; 922 reg = <0xfc834000 0x7000>; 923 interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 924 #dma-cells = <1>; 925 qcom,ee = <0>; 926 927 num-channels = <6>; 928 qcom,num-ees = <1>; 929 qcom,powered-remotely; 930 }; 931 932 modem: remoteproc@fc880000 { 933 compatible = "qcom,msm8226-mss-pil"; 934 reg = <0xfc880000 0x4040>, 935 <0xfc820000 0x10000>; 936 reg-names = "qdsp6", 937 "rmb"; 938 939 interrupts-extended = <&intc GIC_SPI 24 IRQ_TYPE_EDGE_RISING>, 940 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 941 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 942 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 943 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 944 interrupt-names = "wdog", 945 "fatal", 946 "ready", 947 "handover", 948 "stop-ack"; 949 950 clocks = <&gcc GCC_MSS_Q6_BIMC_AXI_CLK>, 951 <&gcc GCC_MSS_CFG_AHB_CLK>, 952 <&gcc GCC_BOOT_ROM_AHB_CLK>, 953 <&rpmcc RPM_SMD_XO_CLK_SRC>; 954 clock-names = "iface", 955 "bus", 956 "mem", 957 "xo"; 958 959 resets = <&gcc GCC_MSS_RESTART>; 960 reset-names = "mss_restart"; 961 962 power-domains = <&rpmpd MSM8226_VDDCX>; 963 power-domain-names = "cx"; 964 965 qcom,ext-bhs-reg = <&tcsr_regs_1 0x194>; 966 qcom,halt-regs = <&tcsr_regs_1 0x180 0x200 0x280>; 967 968 qcom,smem-states = <&modem_smp2p_out 0>; 969 qcom,smem-state-names = "stop"; 970 971 memory-region = <&mba_region>, <&mpss_region>; 972 973 status = "disabled"; 974 975 bam_dmux: bam-dmux { 976 compatible = "qcom,bam-dmux"; 977 978 interrupt-parent = <&modem_smsm>; 979 interrupts = <1 IRQ_TYPE_EDGE_BOTH>, <11 IRQ_TYPE_EDGE_BOTH>; 980 interrupt-names = "pc", "pc-ack"; 981 982 qcom,smem-states = <&apps_smsm 1>, <&apps_smsm 11>; 983 qcom,smem-state-names = "pc", "pc-ack"; 984 985 dmas = <&bam_dmux_dma 4>, <&bam_dmux_dma 5>; 986 dma-names = "tx", "rx"; 987 }; 988 989 smd-edge { 990 interrupts = <GIC_SPI 25 IRQ_TYPE_EDGE_RISING>; 991 992 mboxes = <&apcs 12>; 993 qcom,smd-edge = <0>; 994 995 label = "modem"; 996 }; 997 }; 998 999 tcsr_mutex: hwlock@fd484000 { 1000 compatible = "qcom,msm8226-tcsr-mutex", "qcom,tcsr-mutex"; 1001 reg = <0xfd484000 0x1000>; 1002 #hwlock-cells = <1>; 1003 }; 1004 1005 tcsr_regs_1: syscon@fd485000 { 1006 compatible = "qcom,tcsr-msm8226", "syscon"; 1007 reg = <0xfd485000 0x1000>; 1008 }; 1009 1010 tlmm: pinctrl@fd510000 { 1011 compatible = "qcom,msm8226-pinctrl"; 1012 reg = <0xfd510000 0x4000>; 1013 gpio-controller; 1014 #gpio-cells = <2>; 1015 gpio-ranges = <&tlmm 0 0 117>; 1016 interrupt-controller; 1017 #interrupt-cells = <2>; 1018 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 1019 1020 blsp1_i2c1_pins: blsp1-i2c1-state { 1021 pins = "gpio2", "gpio3"; 1022 function = "blsp_i2c1"; 1023 drive-strength = <2>; 1024 bias-disable; 1025 }; 1026 1027 blsp1_i2c2_pins: blsp1-i2c2-state { 1028 pins = "gpio6", "gpio7"; 1029 function = "blsp_i2c2"; 1030 drive-strength = <2>; 1031 bias-disable; 1032 }; 1033 1034 blsp1_i2c3_pins: blsp1-i2c3-state { 1035 pins = "gpio10", "gpio11"; 1036 function = "blsp_i2c3"; 1037 drive-strength = <2>; 1038 bias-disable; 1039 }; 1040 1041 blsp1_i2c4_pins: blsp1-i2c4-state { 1042 pins = "gpio14", "gpio15"; 1043 function = "blsp_i2c4"; 1044 drive-strength = <2>; 1045 bias-disable; 1046 }; 1047 1048 blsp1_i2c5_pins: blsp1-i2c5-state { 1049 pins = "gpio18", "gpio19"; 1050 function = "blsp_i2c5"; 1051 drive-strength = <2>; 1052 bias-disable; 1053 }; 1054 1055 blsp1_i2c6_pins: blsp1-i2c6-state { 1056 pins = "gpio22", "gpio23"; 1057 function = "blsp_i2c6"; 1058 drive-strength = <2>; 1059 bias-disable; 1060 }; 1061 1062 cci_default: cci-default-state { 1063 pins = "gpio29", "gpio30"; 1064 function = "cci_i2c0"; 1065 1066 drive-strength = <2>; 1067 bias-disable; 1068 }; 1069 1070 cci_sleep: cci-sleep-state { 1071 pins = "gpio29", "gpio30"; 1072 function = "gpio"; 1073 1074 drive-strength = <2>; 1075 bias-disable; 1076 }; 1077 1078 sdhc1_default_state: sdhc1-default-state { 1079 clk-pins { 1080 pins = "sdc1_clk"; 1081 drive-strength = <10>; 1082 bias-disable; 1083 }; 1084 1085 cmd-data-pins { 1086 pins = "sdc1_cmd", "sdc1_data"; 1087 drive-strength = <10>; 1088 bias-pull-up; 1089 }; 1090 }; 1091 1092 sdhc2_default_state: sdhc2-default-state { 1093 clk-pins { 1094 pins = "sdc2_clk"; 1095 drive-strength = <10>; 1096 bias-disable; 1097 }; 1098 1099 cmd-data-pins { 1100 pins = "sdc2_cmd", "sdc2_data"; 1101 drive-strength = <10>; 1102 bias-pull-up; 1103 }; 1104 }; 1105 1106 sdhc3_default_state: sdhc3-default-state { 1107 clk-pins { 1108 pins = "gpio44"; 1109 function = "sdc3"; 1110 drive-strength = <8>; 1111 bias-disable; 1112 }; 1113 1114 cmd-pins { 1115 pins = "gpio43"; 1116 function = "sdc3"; 1117 drive-strength = <8>; 1118 bias-pull-up; 1119 }; 1120 1121 data-pins { 1122 pins = "gpio39", "gpio40", "gpio41", "gpio42"; 1123 function = "sdc3"; 1124 drive-strength = <8>; 1125 bias-pull-up; 1126 }; 1127 }; 1128 }; 1129 1130 mmcc: clock-controller@fd8c0000 { 1131 compatible = "qcom,mmcc-msm8226"; 1132 reg = <0xfd8c0000 0x6000>; 1133 #clock-cells = <1>; 1134 #reset-cells = <1>; 1135 #power-domain-cells = <1>; 1136 1137 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1138 <&gcc GCC_MMSS_GPLL0_CLK_SRC>, 1139 <&gcc GPLL0_VOTE>, 1140 <&gcc GPLL1_VOTE>, 1141 <&rpmcc RPM_SMD_GFX3D_CLK_SRC>, 1142 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>, 1143 <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>; 1144 clock-names = "xo", 1145 "mmss_gpll0_vote", 1146 "gpll0_vote", 1147 "gpll1_vote", 1148 "gfx3d_clk_src", 1149 "dsi0pll", 1150 "dsi0pllbyte"; 1151 }; 1152 1153 mdss: display-subsystem@fd900000 { 1154 compatible = "qcom,mdss"; 1155 reg = <0xfd900000 0x100>, <0xfd924000 0x1000>; 1156 reg-names = "mdss_phys", "vbif_phys"; 1157 1158 power-domains = <&mmcc MDSS_GDSC>; 1159 1160 clocks = <&mmcc MDSS_AHB_CLK>, 1161 <&mmcc MDSS_AXI_CLK>, 1162 <&mmcc MDSS_VSYNC_CLK>; 1163 clock-names = "iface", 1164 "bus", 1165 "vsync"; 1166 1167 interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 1168 1169 interrupt-controller; 1170 #interrupt-cells = <1>; 1171 1172 #address-cells = <1>; 1173 #size-cells = <1>; 1174 ranges; 1175 1176 status = "disabled"; 1177 1178 mdss_mdp: display-controller@fd900000 { 1179 compatible = "qcom,msm8226-mdp5", "qcom,mdp5"; 1180 reg = <0xfd900100 0x22000>; 1181 reg-names = "mdp_phys"; 1182 1183 interrupt-parent = <&mdss>; 1184 interrupts = <0>; 1185 1186 clocks = <&mmcc MDSS_AHB_CLK>, 1187 <&mmcc MDSS_AXI_CLK>, 1188 <&mmcc MDSS_MDP_CLK>, 1189 <&mmcc MDSS_VSYNC_CLK>; 1190 clock-names = "iface", 1191 "bus", 1192 "core", 1193 "vsync"; 1194 1195 ports { 1196 #address-cells = <1>; 1197 #size-cells = <0>; 1198 1199 port@0 { 1200 reg = <0>; 1201 mdss_mdp_intf1_out: endpoint { 1202 remote-endpoint = <&mdss_dsi0_in>; 1203 }; 1204 }; 1205 }; 1206 }; 1207 1208 mdss_dsi0: dsi@fd922800 { 1209 compatible = "qcom,msm8226-dsi-ctrl", 1210 "qcom,mdss-dsi-ctrl"; 1211 reg = <0xfd922800 0x1f8>; 1212 reg-names = "dsi_ctrl"; 1213 1214 interrupt-parent = <&mdss>; 1215 interrupts = <4>; 1216 1217 assigned-clocks = <&mmcc BYTE0_CLK_SRC>, 1218 <&mmcc PCLK0_CLK_SRC>; 1219 assigned-clock-parents = <&mdss_dsi0_phy DSI_BYTE_PLL_CLK>, 1220 <&mdss_dsi0_phy DSI_PIXEL_PLL_CLK>; 1221 1222 clocks = <&mmcc MDSS_MDP_CLK>, 1223 <&mmcc MDSS_AHB_CLK>, 1224 <&mmcc MDSS_AXI_CLK>, 1225 <&mmcc MDSS_BYTE0_CLK>, 1226 <&mmcc MDSS_PCLK0_CLK>, 1227 <&mmcc MDSS_ESC0_CLK>, 1228 <&mmcc MMSS_MISC_AHB_CLK>; 1229 clock-names = "mdp_core", 1230 "iface", 1231 "bus", 1232 "byte", 1233 "pixel", 1234 "core", 1235 "core_mmss"; 1236 1237 phys = <&mdss_dsi0_phy>; 1238 1239 #address-cells = <1>; 1240 #size-cells = <0>; 1241 1242 ports { 1243 #address-cells = <1>; 1244 #size-cells = <0>; 1245 1246 port@0 { 1247 reg = <0>; 1248 mdss_dsi0_in: endpoint { 1249 remote-endpoint = <&mdss_mdp_intf1_out>; 1250 }; 1251 }; 1252 1253 port@1 { 1254 reg = <1>; 1255 mdss_dsi0_out: endpoint { 1256 }; 1257 }; 1258 }; 1259 }; 1260 1261 mdss_dsi0_phy: phy@fd922a00 { 1262 compatible = "qcom,dsi-phy-28nm-8226"; 1263 reg = <0xfd922a00 0xd4>, 1264 <0xfd922b00 0x280>, 1265 <0xfd922d80 0x30>; 1266 reg-names = "dsi_pll", 1267 "dsi_phy", 1268 "dsi_phy_regulator"; 1269 1270 #clock-cells = <1>; 1271 #phy-cells = <0>; 1272 1273 clocks = <&mmcc MDSS_AHB_CLK>, 1274 <&rpmcc RPM_SMD_XO_CLK_SRC>; 1275 clock-names = "iface", 1276 "ref"; 1277 }; 1278 }; 1279 1280 cci: cci@fda0c000 { 1281 compatible = "qcom,msm8226-cci"; 1282 reg = <0xfda0c000 0x1000>; 1283 #address-cells = <1>; 1284 #size-cells = <0>; 1285 interrupts = <GIC_SPI 50 IRQ_TYPE_EDGE_RISING>; 1286 clocks = <&mmcc CAMSS_TOP_AHB_CLK>, 1287 <&mmcc CAMSS_CCI_CCI_AHB_CLK>, 1288 <&mmcc CAMSS_CCI_CCI_CLK>; 1289 clock-names = "camss_top_ahb", 1290 "cci_ahb", 1291 "cci"; 1292 1293 pinctrl-names = "default", "sleep"; 1294 pinctrl-0 = <&cci_default>; 1295 pinctrl-1 = <&cci_sleep>; 1296 1297 status = "disabled"; 1298 1299 cci_i2c0: i2c-bus@0 { 1300 reg = <0>; 1301 clock-frequency = <400000>; 1302 #address-cells = <1>; 1303 #size-cells = <0>; 1304 }; 1305 }; 1306 1307 gpu: gpu@fdb00000 { 1308 compatible = "qcom,adreno-305.18", "qcom,adreno"; 1309 reg = <0xfdb00000 0x10000>; 1310 reg-names = "kgsl_3d0_reg_memory"; 1311 1312 interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; 1313 interrupt-names = "kgsl_3d0_irq"; 1314 1315 clocks = <&mmcc OXILI_GFX3D_CLK>, 1316 <&mmcc OXILICX_AHB_CLK>, 1317 <&mmcc OXILICX_AXI_CLK>; 1318 clock-names = "core", "iface", "mem_iface"; 1319 1320 sram = <&gmu_sram>; 1321 power-domains = <&mmcc OXILICX_GDSC>; 1322 operating-points-v2 = <&gpu_opp_table>; 1323 1324 status = "disabled"; 1325 1326 gpu_opp_table: opp-table { 1327 compatible = "operating-points-v2"; 1328 1329 opp-450000000 { 1330 opp-hz = /bits/ 64 <450000000>; 1331 }; 1332 1333 opp-320000000 { 1334 opp-hz = /bits/ 64 <320000000>; 1335 }; 1336 1337 opp-200000000 { 1338 opp-hz = /bits/ 64 <200000000>; 1339 }; 1340 1341 opp-19000000 { 1342 opp-hz = /bits/ 64 <19000000>; 1343 }; 1344 }; 1345 }; 1346 1347 sram@fdd00000 { 1348 compatible = "qcom,msm8226-ocmem"; 1349 reg = <0xfdd00000 0x2000>, 1350 <0xfec00000 0x20000>; 1351 reg-names = "ctrl", "mem"; 1352 ranges = <0 0xfec00000 0x20000>; 1353 clocks = <&rpmcc RPM_SMD_OCMEMGX_CLK>; 1354 clock-names = "core"; 1355 1356 #address-cells = <1>; 1357 #size-cells = <1>; 1358 1359 gmu_sram: gmu-sram@0 { 1360 reg = <0x0 0x20000>; 1361 }; 1362 }; 1363 1364 adsp: remoteproc@fe200000 { 1365 compatible = "qcom,msm8226-adsp-pil"; 1366 reg = <0xfe200000 0x100>; 1367 1368 interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, 1369 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1370 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1371 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1372 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 1373 interrupt-names = "wdog", "fatal", "ready", "handover", "stop-ack"; 1374 1375 power-domains = <&rpmpd MSM8226_VDDCX>; 1376 power-domain-names = "cx"; 1377 1378 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 1379 clock-names = "xo"; 1380 1381 memory-region = <&adsp_region>; 1382 1383 qcom,smem-states = <&adsp_smp2p_out 0>; 1384 qcom,smem-state-names = "stop"; 1385 1386 status = "disabled"; 1387 1388 smd-edge { 1389 interrupts = <GIC_SPI 156 IRQ_TYPE_EDGE_RISING>; 1390 1391 mboxes = <&apcs 8>; 1392 qcom,smd-edge = <1>; 1393 1394 label = "lpass"; 1395 }; 1396 }; 1397 1398 sram@fe805000 { 1399 compatible = "qcom,msm8226-imem", "syscon", "simple-mfd"; 1400 reg = <0xfe805000 0x1000>; 1401 1402 reboot-mode { 1403 compatible = "syscon-reboot-mode"; 1404 offset = <0x65c>; 1405 1406 mode-bootloader = <0x77665500>; 1407 mode-normal = <0x77665501>; 1408 mode-recovery = <0x77665502>; 1409 }; 1410 }; 1411 }; 1412 1413 thermal-zones { 1414 cpu0-thermal { 1415 polling-delay-passive = <250>; 1416 polling-delay = <1000>; 1417 1418 thermal-sensors = <&tsens 5>; 1419 1420 cooling-maps { 1421 map0 { 1422 trip = <&cpu_alert0>; 1423 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1424 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1425 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1426 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1427 }; 1428 }; 1429 1430 trips { 1431 cpu_alert0: trip0 { 1432 temperature = <75000>; 1433 hysteresis = <2000>; 1434 type = "passive"; 1435 }; 1436 1437 cpu_crit0: trip1 { 1438 temperature = <110000>; 1439 hysteresis = <2000>; 1440 type = "critical"; 1441 }; 1442 }; 1443 }; 1444 1445 cpu1-thermal { 1446 polling-delay-passive = <250>; 1447 polling-delay = <1000>; 1448 1449 thermal-sensors = <&tsens 2>; 1450 1451 cooling-maps { 1452 map0 { 1453 trip = <&cpu_alert1>; 1454 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1455 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1456 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1457 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1458 }; 1459 }; 1460 1461 trips { 1462 cpu_alert1: trip0 { 1463 temperature = <75000>; 1464 hysteresis = <2000>; 1465 type = "passive"; 1466 }; 1467 1468 cpu_crit1: trip1 { 1469 temperature = <110000>; 1470 hysteresis = <2000>; 1471 type = "critical"; 1472 }; 1473 }; 1474 }; 1475 }; 1476 1477 timer { 1478 compatible = "arm,armv7-timer"; 1479 interrupts = <GIC_PPI 2 1480 (GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>, 1481 <GIC_PPI 3 1482 (GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>, 1483 <GIC_PPI 4 1484 (GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>, 1485 <GIC_PPI 1 1486 (GIC_CPU_MASK_RAW(15) | IRQ_TYPE_LEVEL_LOW)>; 1487 }; 1488}; 1489