1/* 2 * BSD LICENSE 3 * 4 * Copyright(c) 2015-2017 Broadcom. All rights reserved. 5 * 6 * Redistribution and use in source and binary forms, with or without 7 * modification, are permitted provided that the following conditions 8 * are met: 9 * 10 * * Redistributions of source code must retain the above copyright 11 * notice, this list of conditions and the following disclaimer. 12 * * Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in 14 * the documentation and/or other materials provided with the 15 * distribution. 16 * * Neither the name of Broadcom nor the names of its 17 * contributors may be used to endorse or promote products derived 18 * from this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33#include <dt-bindings/interrupt-controller/arm-gic.h> 34 35/ { 36 compatible = "brcm,stingray"; 37 interrupt-parent = <&gic>; 38 #address-cells = <2>; 39 #size-cells = <2>; 40 41 cpus { 42 #address-cells = <2>; 43 #size-cells = <0>; 44 45 cpu@0 { 46 device_type = "cpu"; 47 compatible = "arm,cortex-a72"; 48 reg = <0x0 0x0>; 49 enable-method = "psci"; 50 next-level-cache = <&CLUSTER0_L2>; 51 }; 52 53 cpu@1 { 54 device_type = "cpu"; 55 compatible = "arm,cortex-a72"; 56 reg = <0x0 0x1>; 57 enable-method = "psci"; 58 next-level-cache = <&CLUSTER0_L2>; 59 }; 60 61 cpu@100 { 62 device_type = "cpu"; 63 compatible = "arm,cortex-a72"; 64 reg = <0x0 0x100>; 65 enable-method = "psci"; 66 next-level-cache = <&CLUSTER1_L2>; 67 }; 68 69 cpu@101 { 70 device_type = "cpu"; 71 compatible = "arm,cortex-a72"; 72 reg = <0x0 0x101>; 73 enable-method = "psci"; 74 next-level-cache = <&CLUSTER1_L2>; 75 }; 76 77 cpu@200 { 78 device_type = "cpu"; 79 compatible = "arm,cortex-a72"; 80 reg = <0x0 0x200>; 81 enable-method = "psci"; 82 next-level-cache = <&CLUSTER2_L2>; 83 }; 84 85 cpu@201 { 86 device_type = "cpu"; 87 compatible = "arm,cortex-a72"; 88 reg = <0x0 0x201>; 89 enable-method = "psci"; 90 next-level-cache = <&CLUSTER2_L2>; 91 }; 92 93 cpu@300 { 94 device_type = "cpu"; 95 compatible = "arm,cortex-a72"; 96 reg = <0x0 0x300>; 97 enable-method = "psci"; 98 next-level-cache = <&CLUSTER3_L2>; 99 }; 100 101 cpu@301 { 102 device_type = "cpu"; 103 compatible = "arm,cortex-a72"; 104 reg = <0x0 0x301>; 105 enable-method = "psci"; 106 next-level-cache = <&CLUSTER3_L2>; 107 }; 108 109 CLUSTER0_L2: l2-cache@0 { 110 compatible = "cache"; 111 cache-level = <2>; 112 }; 113 114 CLUSTER1_L2: l2-cache@100 { 115 compatible = "cache"; 116 cache-level = <2>; 117 }; 118 119 CLUSTER2_L2: l2-cache@200 { 120 compatible = "cache"; 121 cache-level = <2>; 122 }; 123 124 CLUSTER3_L2: l2-cache@300 { 125 compatible = "cache"; 126 cache-level = <2>; 127 }; 128 }; 129 130 memory: memory@80000000 { 131 device_type = "memory"; 132 reg = <0x00000000 0x80000000 0 0x40000000>; 133 }; 134 135 psci { 136 compatible = "arm,psci-0.2"; 137 method = "smc"; 138 }; 139 140 pmu { 141 compatible = "arm,armv8-pmuv3"; 142 interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 143 }; 144 145 timer { 146 compatible = "arm,armv8-timer"; 147 interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>, 148 <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>, 149 <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>, 150 <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>; 151 }; 152 153 mhb: syscon@60401000 { 154 compatible = "brcm,sr-mhb", "syscon"; 155 reg = <0 0x60401000 0 0x38c>; 156 }; 157 158 scr { 159 compatible = "simple-bus"; 160 #address-cells = <1>; 161 #size-cells = <1>; 162 ranges = <0x0 0x0 0x61000000 0x05000000>; 163 164 ccn: ccn@0 { 165 compatible = "arm,ccn-502"; 166 reg = <0x00000000 0x900000>; 167 interrupts = <GIC_SPI 799 IRQ_TYPE_LEVEL_HIGH>; 168 }; 169 170 gic: interrupt-controller@2c00000 { 171 compatible = "arm,gic-v3"; 172 #interrupt-cells = <3>; 173 #address-cells = <1>; 174 #size-cells = <1>; 175 ranges; 176 interrupt-controller; 177 reg = <0x02c00000 0x010000>, /* GICD */ 178 <0x02e00000 0x600000>; /* GICR */ 179 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 180 181 gic_its: gic-its@63c20000 { 182 compatible = "arm,gic-v3-its"; 183 msi-controller; 184 #msi-cells = <1>; 185 reg = <0x02c20000 0x10000>; 186 }; 187 }; 188 189 smmu: iommu@3000000 { 190 compatible = "arm,mmu-500"; 191 reg = <0x03000000 0x80000>; 192 #global-interrupts = <1>; 193 interrupts = <GIC_SPI 704 IRQ_TYPE_LEVEL_HIGH>, 194 <GIC_SPI 711 IRQ_TYPE_LEVEL_HIGH>, 195 <GIC_SPI 712 IRQ_TYPE_LEVEL_HIGH>, 196 <GIC_SPI 713 IRQ_TYPE_LEVEL_HIGH>, 197 <GIC_SPI 714 IRQ_TYPE_LEVEL_HIGH>, 198 <GIC_SPI 715 IRQ_TYPE_LEVEL_HIGH>, 199 <GIC_SPI 716 IRQ_TYPE_LEVEL_HIGH>, 200 <GIC_SPI 717 IRQ_TYPE_LEVEL_HIGH>, 201 <GIC_SPI 718 IRQ_TYPE_LEVEL_HIGH>, 202 <GIC_SPI 719 IRQ_TYPE_LEVEL_HIGH>, 203 <GIC_SPI 720 IRQ_TYPE_LEVEL_HIGH>, 204 <GIC_SPI 721 IRQ_TYPE_LEVEL_HIGH>, 205 <GIC_SPI 722 IRQ_TYPE_LEVEL_HIGH>, 206 <GIC_SPI 723 IRQ_TYPE_LEVEL_HIGH>, 207 <GIC_SPI 724 IRQ_TYPE_LEVEL_HIGH>, 208 <GIC_SPI 725 IRQ_TYPE_LEVEL_HIGH>, 209 <GIC_SPI 726 IRQ_TYPE_LEVEL_HIGH>, 210 <GIC_SPI 727 IRQ_TYPE_LEVEL_HIGH>, 211 <GIC_SPI 728 IRQ_TYPE_LEVEL_HIGH>, 212 <GIC_SPI 729 IRQ_TYPE_LEVEL_HIGH>, 213 <GIC_SPI 730 IRQ_TYPE_LEVEL_HIGH>, 214 <GIC_SPI 731 IRQ_TYPE_LEVEL_HIGH>, 215 <GIC_SPI 732 IRQ_TYPE_LEVEL_HIGH>, 216 <GIC_SPI 733 IRQ_TYPE_LEVEL_HIGH>, 217 <GIC_SPI 734 IRQ_TYPE_LEVEL_HIGH>, 218 <GIC_SPI 735 IRQ_TYPE_LEVEL_HIGH>, 219 <GIC_SPI 736 IRQ_TYPE_LEVEL_HIGH>, 220 <GIC_SPI 737 IRQ_TYPE_LEVEL_HIGH>, 221 <GIC_SPI 738 IRQ_TYPE_LEVEL_HIGH>, 222 <GIC_SPI 739 IRQ_TYPE_LEVEL_HIGH>, 223 <GIC_SPI 740 IRQ_TYPE_LEVEL_HIGH>, 224 <GIC_SPI 741 IRQ_TYPE_LEVEL_HIGH>, 225 <GIC_SPI 742 IRQ_TYPE_LEVEL_HIGH>, 226 <GIC_SPI 743 IRQ_TYPE_LEVEL_HIGH>, 227 <GIC_SPI 744 IRQ_TYPE_LEVEL_HIGH>, 228 <GIC_SPI 745 IRQ_TYPE_LEVEL_HIGH>, 229 <GIC_SPI 746 IRQ_TYPE_LEVEL_HIGH>, 230 <GIC_SPI 747 IRQ_TYPE_LEVEL_HIGH>, 231 <GIC_SPI 748 IRQ_TYPE_LEVEL_HIGH>, 232 <GIC_SPI 749 IRQ_TYPE_LEVEL_HIGH>, 233 <GIC_SPI 750 IRQ_TYPE_LEVEL_HIGH>, 234 <GIC_SPI 751 IRQ_TYPE_LEVEL_HIGH>, 235 <GIC_SPI 752 IRQ_TYPE_LEVEL_HIGH>, 236 <GIC_SPI 753 IRQ_TYPE_LEVEL_HIGH>, 237 <GIC_SPI 754 IRQ_TYPE_LEVEL_HIGH>, 238 <GIC_SPI 755 IRQ_TYPE_LEVEL_HIGH>, 239 <GIC_SPI 756 IRQ_TYPE_LEVEL_HIGH>, 240 <GIC_SPI 757 IRQ_TYPE_LEVEL_HIGH>, 241 <GIC_SPI 758 IRQ_TYPE_LEVEL_HIGH>, 242 <GIC_SPI 759 IRQ_TYPE_LEVEL_HIGH>, 243 <GIC_SPI 760 IRQ_TYPE_LEVEL_HIGH>, 244 <GIC_SPI 761 IRQ_TYPE_LEVEL_HIGH>, 245 <GIC_SPI 762 IRQ_TYPE_LEVEL_HIGH>, 246 <GIC_SPI 763 IRQ_TYPE_LEVEL_HIGH>, 247 <GIC_SPI 764 IRQ_TYPE_LEVEL_HIGH>, 248 <GIC_SPI 765 IRQ_TYPE_LEVEL_HIGH>, 249 <GIC_SPI 766 IRQ_TYPE_LEVEL_HIGH>, 250 <GIC_SPI 767 IRQ_TYPE_LEVEL_HIGH>, 251 <GIC_SPI 768 IRQ_TYPE_LEVEL_HIGH>, 252 <GIC_SPI 769 IRQ_TYPE_LEVEL_HIGH>, 253 <GIC_SPI 770 IRQ_TYPE_LEVEL_HIGH>, 254 <GIC_SPI 771 IRQ_TYPE_LEVEL_HIGH>, 255 <GIC_SPI 772 IRQ_TYPE_LEVEL_HIGH>, 256 <GIC_SPI 773 IRQ_TYPE_LEVEL_HIGH>, 257 <GIC_SPI 774 IRQ_TYPE_LEVEL_HIGH>; 258 #iommu-cells = <2>; 259 }; 260 }; 261 262 crmu: crmu { 263 compatible = "simple-bus"; 264 #address-cells = <1>; 265 #size-cells = <1>; 266 ranges = <0x0 0x0 0x66400000 0x100000>; 267 268 #include "stingray-clock.dtsi" 269 270 otp: otp@1c400 { 271 compatible = "brcm,ocotp-v2"; 272 reg = <0x0001c400 0x68>; 273 brcm,ocotp-size = <2048>; 274 status = "okay"; 275 }; 276 277 cdru: syscon@1d000 { 278 compatible = "brcm,sr-cdru", "syscon"; 279 reg = <0x0001d000 0x400>; 280 }; 281 282 gpio_crmu: gpio@24800 { 283 compatible = "brcm,iproc-gpio"; 284 reg = <0x00024800 0x4c>; 285 ngpios = <6>; 286 #gpio-cells = <2>; 287 gpio-controller; 288 }; 289 }; 290 291 #include "stingray-fs4.dtsi" 292 #include "stingray-pcie.dtsi" 293 #include "stingray-usb.dtsi" 294 295 hsls { 296 compatible = "simple-bus"; 297 #address-cells = <1>; 298 #size-cells = <1>; 299 ranges = <0x0 0x0 0x68900000 0x17700000>; 300 301 #include "stingray-pinctrl.dtsi" 302 303 mdio_mux_iproc: mdio-mux@20000 { 304 compatible = "brcm,mdio-mux-iproc"; 305 reg = <0x00020000 0x250>; 306 #address-cells = <1>; 307 #size-cells = <0>; 308 309 mdio@0 { /* PCIe serdes */ 310 reg = <0x0>; 311 #address-cells = <1>; 312 #size-cells = <0>; 313 }; 314 315 mdio@3 { /* USB */ 316 reg = <0x3>; 317 #address-cells = <1>; 318 #size-cells = <0>; 319 }; 320 321 mdio@10 { /* RGMII */ 322 reg = <0x10>; 323 #address-cells = <1>; 324 #size-cells = <0>; 325 }; 326 }; 327 328 pwm: pwm@10000 { 329 compatible = "brcm,iproc-pwm"; 330 reg = <0x00010000 0x1000>; 331 clocks = <&crmu_ref25m>; 332 #pwm-cells = <3>; 333 status = "disabled"; 334 }; 335 336 timer0: timer@30000 { 337 compatible = "arm,sp804", "arm,primecell"; 338 reg = <0x00030000 0x1000>; 339 interrupts = <GIC_SPI 179 IRQ_TYPE_LEVEL_HIGH>; 340 clocks = <&hsls_25m_div2_clk>, 341 <&hsls_25m_div2_clk>, 342 <&hsls_div4_clk>; 343 clock-names = "timer1", "timer2", "apb_pclk"; 344 status = "disabled"; 345 }; 346 347 timer1: timer@40000 { 348 compatible = "arm,sp804", "arm,primecell"; 349 reg = <0x00040000 0x1000>; 350 interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>; 351 clocks = <&hsls_25m_div2_clk>, 352 <&hsls_25m_div2_clk>, 353 <&hsls_div4_clk>; 354 clock-names = "timer1", "timer2", "apb_pclk"; 355 }; 356 357 timer2: timer@50000 { 358 compatible = "arm,sp804", "arm,primecell"; 359 reg = <0x00050000 0x1000>; 360 interrupts = <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>; 361 clocks = <&hsls_25m_div2_clk>, 362 <&hsls_25m_div2_clk>, 363 <&hsls_div4_clk>; 364 clock-names = "timer1", "timer2", "apb_pclk"; 365 status = "disabled"; 366 }; 367 368 timer3: timer@60000 { 369 compatible = "arm,sp804", "arm,primecell"; 370 reg = <0x00060000 0x1000>; 371 interrupts = <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>; 372 clocks = <&hsls_25m_div2_clk>, 373 <&hsls_25m_div2_clk>, 374 <&hsls_div4_clk>; 375 clock-names = "timer1", "timer2", "apb_pclk"; 376 status = "disabled"; 377 }; 378 379 timer4: timer@70000 { 380 compatible = "arm,sp804", "arm,primecell"; 381 reg = <0x00070000 0x1000>; 382 interrupts = <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>; 383 clocks = <&hsls_25m_div2_clk>, 384 <&hsls_25m_div2_clk>, 385 <&hsls_div4_clk>; 386 clock-names = "timer1", "timer2", "apb_pclk"; 387 status = "disabled"; 388 }; 389 390 timer5: timer@80000 { 391 compatible = "arm,sp804", "arm,primecell"; 392 reg = <0x00080000 0x1000>; 393 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 394 clocks = <&hsls_25m_div2_clk>, 395 <&hsls_25m_div2_clk>, 396 <&hsls_div4_clk>; 397 clock-names = "timer1", "timer2", "apb_pclk"; 398 status = "disabled"; 399 }; 400 401 timer6: timer@90000 { 402 compatible = "arm,sp804", "arm,primecell"; 403 reg = <0x00090000 0x1000>; 404 interrupts = <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>; 405 clocks = <&hsls_25m_div2_clk>, 406 <&hsls_25m_div2_clk>, 407 <&hsls_div4_clk>; 408 clock-names = "timer1", "timer2", "apb_pclk"; 409 status = "disabled"; 410 }; 411 412 timer7: timer@a0000 { 413 compatible = "arm,sp804", "arm,primecell"; 414 reg = <0x000a0000 0x1000>; 415 interrupts = <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>; 416 clocks = <&hsls_25m_div2_clk>, 417 <&hsls_25m_div2_clk>, 418 <&hsls_div4_clk>; 419 clock-names = "timer1", "timer2", "apb_pclk"; 420 status = "disabled"; 421 }; 422 423 i2c0: i2c@b0000 { 424 compatible = "brcm,iproc-i2c"; 425 reg = <0x000b0000 0x100>; 426 #address-cells = <1>; 427 #size-cells = <0>; 428 interrupts = <GIC_SPI 177 IRQ_TYPE_LEVEL_HIGH>; 429 clock-frequency = <100000>; 430 status = "disabled"; 431 }; 432 433 wdt0: watchdog@c0000 { 434 compatible = "arm,sp805", "arm,primecell"; 435 reg = <0x000c0000 0x1000>; 436 interrupts = <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>; 437 clocks = <&hsls_25m_div2_clk>, <&hsls_div4_clk>; 438 clock-names = "wdog_clk", "apb_pclk"; 439 timeout-sec = <60>; 440 }; 441 442 gpio_hsls: gpio@d0000 { 443 compatible = "brcm,iproc-gpio"; 444 reg = <0x000d0000 0x864>; 445 ngpios = <151>; 446 #gpio-cells = <2>; 447 gpio-controller; 448 interrupt-controller; 449 interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>; 450 gpio-ranges = <&pinmux 0 0 16>, 451 <&pinmux 16 71 2>, 452 <&pinmux 18 131 8>, 453 <&pinmux 26 83 6>, 454 <&pinmux 32 123 4>, 455 <&pinmux 36 43 24>, 456 <&pinmux 60 89 2>, 457 <&pinmux 62 73 4>, 458 <&pinmux 66 95 28>, 459 <&pinmux 94 127 4>, 460 <&pinmux 98 139 10>, 461 <&pinmux 108 16 27>, 462 <&pinmux 135 77 6>, 463 <&pinmux 141 67 4>, 464 <&pinmux 145 149 6>; 465 }; 466 467 i2c1: i2c@e0000 { 468 compatible = "brcm,iproc-i2c"; 469 reg = <0x000e0000 0x100>; 470 #address-cells = <1>; 471 #size-cells = <0>; 472 interrupts = <GIC_SPI 178 IRQ_TYPE_LEVEL_HIGH>; 473 clock-frequency = <100000>; 474 status = "disabled"; 475 }; 476 477 uart0: serial@100000 { 478 device_type = "serial"; 479 compatible = "snps,dw-apb-uart"; 480 reg = <0x00100000 0x1000>; 481 reg-shift = <2>; 482 clock-frequency = <25000000>; 483 interrupt-parent = <&gic>; 484 interrupts = <GIC_SPI 173 IRQ_TYPE_LEVEL_HIGH>; 485 status = "disabled"; 486 }; 487 488 uart1: serial@110000 { 489 device_type = "serial"; 490 compatible = "snps,dw-apb-uart"; 491 reg = <0x00110000 0x1000>; 492 reg-shift = <2>; 493 clock-frequency = <25000000>; 494 interrupt-parent = <&gic>; 495 interrupts = <GIC_SPI 174 IRQ_TYPE_LEVEL_HIGH>; 496 status = "disabled"; 497 }; 498 499 uart2: serial@120000 { 500 device_type = "serial"; 501 compatible = "snps,dw-apb-uart"; 502 reg = <0x00120000 0x1000>; 503 reg-shift = <2>; 504 clock-frequency = <25000000>; 505 interrupt-parent = <&gic>; 506 interrupts = <GIC_SPI 175 IRQ_TYPE_LEVEL_HIGH>; 507 status = "disabled"; 508 }; 509 510 uart3: serial@130000 { 511 device_type = "serial"; 512 compatible = "snps,dw-apb-uart"; 513 reg = <0x00130000 0x1000>; 514 reg-shift = <2>; 515 clock-frequency = <25000000>; 516 interrupt-parent = <&gic>; 517 interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>; 518 status = "disabled"; 519 }; 520 521 ssp0: spi@180000 { 522 compatible = "arm,pl022", "arm,primecell"; 523 reg = <0x00180000 0x1000>; 524 interrupts = <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>; 525 clocks = <&hsls_div2_clk>, <&hsls_div2_clk>; 526 clock-names = "sspclk", "apb_pclk"; 527 num-cs = <1>; 528 #address-cells = <1>; 529 #size-cells = <0>; 530 status = "disabled"; 531 }; 532 533 ssp1: spi@190000 { 534 compatible = "arm,pl022", "arm,primecell"; 535 reg = <0x00190000 0x1000>; 536 interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; 537 clocks = <&hsls_div2_clk>, <&hsls_div2_clk>; 538 clock-names = "sspclk", "apb_pclk"; 539 num-cs = <1>; 540 #address-cells = <1>; 541 #size-cells = <0>; 542 status = "disabled"; 543 }; 544 545 hwrng: hwrng@220000 { 546 compatible = "brcm,iproc-rng200"; 547 reg = <0x00220000 0x28>; 548 }; 549 550 dma0: dma-controller@310000 { 551 compatible = "arm,pl330", "arm,primecell"; 552 reg = <0x00310000 0x1000>; 553 interrupts = <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>, 554 <GIC_SPI 194 IRQ_TYPE_LEVEL_HIGH>, 555 <GIC_SPI 195 IRQ_TYPE_LEVEL_HIGH>, 556 <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>, 557 <GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>, 558 <GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>, 559 <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>, 560 <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>, 561 <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>; 562 #dma-cells = <1>; 563 clocks = <&hsls_div2_clk>; 564 clock-names = "apb_pclk"; 565 iommus = <&smmu 0x6000 0x0000>; 566 }; 567 568 enet: ethernet@340000{ 569 compatible = "brcm,amac"; 570 reg = <0x00340000 0x1000>; 571 reg-names = "amac_base"; 572 dma-coherent; 573 interrupts = <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>; 574 status = "disabled"; 575 }; 576 577 nand: nand@360000 { 578 compatible = "brcm,nand-iproc", "brcm,brcmnand-v6.1"; 579 reg = <0x00360000 0x600>, 580 <0x0050a408 0x600>, 581 <0x00360f00 0x20>; 582 reg-names = "nand", "iproc-idm", "iproc-ext"; 583 interrupts = <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>; 584 #address-cells = <1>; 585 #size-cells = <0>; 586 brcm,nand-has-wp; 587 status = "disabled"; 588 }; 589 590 sdio0: sdhci@3f1000 { 591 compatible = "brcm,sdhci-iproc"; 592 reg = <0x003f1000 0x100>; 593 interrupts = <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>; 594 bus-width = <8>; 595 clocks = <&sdio0_clk>; 596 iommus = <&smmu 0x6002 0x0000>; 597 status = "disabled"; 598 }; 599 600 sdio1: sdhci@3f2000 { 601 compatible = "brcm,sdhci-iproc"; 602 reg = <0x003f2000 0x100>; 603 interrupts = <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>; 604 bus-width = <8>; 605 clocks = <&sdio1_clk>; 606 iommus = <&smmu 0x6003 0x0000>; 607 status = "disabled"; 608 }; 609 }; 610 611 tmons { 612 compatible = "simple-bus"; 613 #address-cells = <1>; 614 #size-cells = <1>; 615 ranges = <0x0 0x0 0x8f100000 0x100>; 616 617 tmon: tmon@0 { 618 compatible = "brcm,sr-thermal"; 619 reg = <0x0 0x40>; 620 brcm,tmon-mask = <0x3f>; 621 #thermal-sensor-cells = <1>; 622 }; 623 }; 624 625 thermal-zones { 626 ihost0_thermal: ihost0-thermal { 627 polling-delay-passive = <0>; 628 polling-delay = <1000>; 629 thermal-sensors = <&tmon 0>; 630 trips { 631 cpu-crit { 632 temperature = <105000>; 633 hysteresis = <0>; 634 type = "critical"; 635 }; 636 }; 637 }; 638 ihost1_thermal: ihost1-thermal { 639 polling-delay-passive = <0>; 640 polling-delay = <1000>; 641 thermal-sensors = <&tmon 1>; 642 trips { 643 cpu-crit { 644 temperature = <105000>; 645 hysteresis = <0>; 646 type = "critical"; 647 }; 648 }; 649 }; 650 ihost2_thermal: ihost2-thermal { 651 polling-delay-passive = <0>; 652 polling-delay = <1000>; 653 thermal-sensors = <&tmon 2>; 654 trips { 655 cpu-crit { 656 temperature = <105000>; 657 hysteresis = <0>; 658 type = "critical"; 659 }; 660 }; 661 }; 662 ihost3_thermal: ihost3-thermal { 663 polling-delay-passive = <0>; 664 polling-delay = <1000>; 665 thermal-sensors = <&tmon 3>; 666 trips { 667 cpu-crit { 668 temperature = <105000>; 669 hysteresis = <0>; 670 type = "critical"; 671 }; 672 }; 673 }; 674 crmu_thermal: crmu-thermal { 675 polling-delay-passive = <0>; 676 polling-delay = <1000>; 677 thermal-sensors = <&tmon 4>; 678 trips { 679 cpu-crit { 680 temperature = <105000>; 681 hysteresis = <0>; 682 type = "critical"; 683 }; 684 }; 685 }; 686 nitro_thermal: nitro-thermal { 687 polling-delay-passive = <0>; 688 polling-delay = <1000>; 689 thermal-sensors = <&tmon 5>; 690 trips { 691 cpu-crit { 692 temperature = <105000>; 693 hysteresis = <0>; 694 type = "critical"; 695 }; 696 }; 697 }; 698 }; 699 700 nic-hsls { 701 compatible = "simple-bus"; 702 #address-cells = <1>; 703 #size-cells = <1>; 704 ranges = <0x0 0x0 0x0 0x7fffffff>; 705 706 nic_i2c0: i2c@60826100 { 707 compatible = "brcm,iproc-nic-i2c"; 708 #address-cells = <1>; 709 #size-cells = <0>; 710 reg = <0x60826100 0x100>, 711 <0x60e00408 0x1000>; 712 brcm,ape-hsls-addr-mask = <0x03400000>; 713 clock-frequency = <100000>; 714 status = "disabled"; 715 }; 716 }; 717}; 718