19eec6cb1SIvan Mikhaylov/* 29eec6cb1SIvan Mikhaylov * Device Tree Source for FSP2 39eec6cb1SIvan Mikhaylov * 49eec6cb1SIvan Mikhaylov * Copyright 2010,2012 IBM Corp. 59eec6cb1SIvan Mikhaylov * 69eec6cb1SIvan Mikhaylov * This file is licensed under the terms of the GNU General Public 79eec6cb1SIvan Mikhaylov * License version 2. This program is licensed "as is" without 89eec6cb1SIvan Mikhaylov * any warranty of any kind, whether express or implied. 99eec6cb1SIvan Mikhaylov */ 109eec6cb1SIvan Mikhaylov 119eec6cb1SIvan Mikhaylov 129eec6cb1SIvan Mikhaylov/dts-v1/; 139eec6cb1SIvan Mikhaylov 149eec6cb1SIvan Mikhaylov/ { 159eec6cb1SIvan Mikhaylov #address-cells = <2>; 169eec6cb1SIvan Mikhaylov #size-cells = <1>; 179eec6cb1SIvan Mikhaylov model = "ibm,fsp2"; 189eec6cb1SIvan Mikhaylov compatible = "ibm,fsp2"; 199eec6cb1SIvan Mikhaylov dcr-parent = <&{/cpus/cpu@0}>; 209eec6cb1SIvan Mikhaylov 219eec6cb1SIvan Mikhaylov aliases { 229eec6cb1SIvan Mikhaylov ethernet0 = &EMAC0; 239eec6cb1SIvan Mikhaylov ethernet1 = &EMAC1; 249eec6cb1SIvan Mikhaylov serial0 = &UART0; 259eec6cb1SIvan Mikhaylov }; 269eec6cb1SIvan Mikhaylov 279eec6cb1SIvan Mikhaylov cpus { 289eec6cb1SIvan Mikhaylov #address-cells = <1>; 299eec6cb1SIvan Mikhaylov #size-cells = <0>; 309eec6cb1SIvan Mikhaylov 319eec6cb1SIvan Mikhaylov cpu@0 { 329eec6cb1SIvan Mikhaylov device_type = "cpu"; 339eec6cb1SIvan Mikhaylov model = "PowerPC, 476FSP2"; 349eec6cb1SIvan Mikhaylov reg = <0x0>; 359eec6cb1SIvan Mikhaylov clock-frequency = <0>; /* Filled in by cuboot */ 369eec6cb1SIvan Mikhaylov timebase-frequency = <0>; /* Filled in by cuboot */ 379eec6cb1SIvan Mikhaylov i-cache-line-size = <32>; 389eec6cb1SIvan Mikhaylov d-cache-line-size = <32>; 399eec6cb1SIvan Mikhaylov d-cache-size = <32768>; 409eec6cb1SIvan Mikhaylov i-cache-size = <32768>; 419eec6cb1SIvan Mikhaylov dcr-controller; 429eec6cb1SIvan Mikhaylov dcr-access-method = "native"; 439eec6cb1SIvan Mikhaylov }; 449eec6cb1SIvan Mikhaylov }; 459eec6cb1SIvan Mikhaylov 469eec6cb1SIvan Mikhaylov memory { 479eec6cb1SIvan Mikhaylov device_type = "memory"; 489eec6cb1SIvan Mikhaylov reg = <0x00000000 0x00000000 0x00000000>; /* Filled in by 499eec6cb1SIvan Mikhaylov cuboot */ 509eec6cb1SIvan Mikhaylov }; 519eec6cb1SIvan Mikhaylov 529eec6cb1SIvan Mikhaylov clocks { 539eec6cb1SIvan Mikhaylov mmc_clk: mmc_clk { 549eec6cb1SIvan Mikhaylov compatible = "fixed-clock"; 55754f0309SIvan Mikhaylov #clock-cells = <0>; 569eec6cb1SIvan Mikhaylov clock-frequency = <50000000>; 579eec6cb1SIvan Mikhaylov clock-output-names = "mmc_clk"; 589eec6cb1SIvan Mikhaylov }; 599eec6cb1SIvan Mikhaylov }; 609eec6cb1SIvan Mikhaylov 619eec6cb1SIvan Mikhaylov UIC0: uic0 { 629eec6cb1SIvan Mikhaylov #address-cells = <0>; 639eec6cb1SIvan Mikhaylov #size-cells = <0>; 649eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 659eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 669eec6cb1SIvan Mikhaylov interrupt-controller; 679eec6cb1SIvan Mikhaylov cell-index = <0>; 689eec6cb1SIvan Mikhaylov dcr-reg = <0x2c0 0x8>; 699eec6cb1SIvan Mikhaylov }; 709eec6cb1SIvan Mikhaylov 719eec6cb1SIvan Mikhaylov /* "interrupts" field is <bit level bit level> 729eec6cb1SIvan Mikhaylov first pair is non-critical, second is critical */ 739eec6cb1SIvan Mikhaylov UIC1_0: uic1_0 { 749eec6cb1SIvan Mikhaylov #address-cells = <0>; 759eec6cb1SIvan Mikhaylov #size-cells = <0>; 769eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 779eec6cb1SIvan Mikhaylov 789eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 799eec6cb1SIvan Mikhaylov interrupt-controller; 809eec6cb1SIvan Mikhaylov cell-index = <1>; 819eec6cb1SIvan Mikhaylov dcr-reg = <0x2c8 0x8>; 829eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 839eec6cb1SIvan Mikhaylov interrupts = <21 0x4 4 0x84>; 849eec6cb1SIvan Mikhaylov }; 859eec6cb1SIvan Mikhaylov 869eec6cb1SIvan Mikhaylov /* PSI and DMA */ 879eec6cb1SIvan Mikhaylov UIC1_1: uic1_1 { 889eec6cb1SIvan Mikhaylov #address-cells = <0>; 899eec6cb1SIvan Mikhaylov #size-cells = <0>; 909eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 919eec6cb1SIvan Mikhaylov 929eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 939eec6cb1SIvan Mikhaylov interrupt-controller; 949eec6cb1SIvan Mikhaylov cell-index = <2>; 959eec6cb1SIvan Mikhaylov dcr-reg = <0x350 0x8>; 969eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 979eec6cb1SIvan Mikhaylov interrupts = <22 0x4 5 0x84>; 989eec6cb1SIvan Mikhaylov }; 999eec6cb1SIvan Mikhaylov 1009eec6cb1SIvan Mikhaylov /* Ethernet and USB */ 1019eec6cb1SIvan Mikhaylov UIC1_2: uic1_2 { 1029eec6cb1SIvan Mikhaylov #address-cells = <0>; 1039eec6cb1SIvan Mikhaylov #size-cells = <0>; 1049eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1059eec6cb1SIvan Mikhaylov 1069eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1079eec6cb1SIvan Mikhaylov interrupt-controller; 1089eec6cb1SIvan Mikhaylov cell-index = <3>; 1099eec6cb1SIvan Mikhaylov dcr-reg = <0x358 0x8>; 1109eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 1119eec6cb1SIvan Mikhaylov interrupts = <23 0x4 6 0x84>; 1129eec6cb1SIvan Mikhaylov }; 1139eec6cb1SIvan Mikhaylov 1149eec6cb1SIvan Mikhaylov /* PLB Errors */ 1159eec6cb1SIvan Mikhaylov UIC1_3: uic1_3 { 1169eec6cb1SIvan Mikhaylov #address-cells = <0>; 1179eec6cb1SIvan Mikhaylov #size-cells = <0>; 1189eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1199eec6cb1SIvan Mikhaylov 1209eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1219eec6cb1SIvan Mikhaylov interrupt-controller; 1229eec6cb1SIvan Mikhaylov cell-index = <4>; 1239eec6cb1SIvan Mikhaylov dcr-reg = <0x360 0x8>; 1249eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 1259eec6cb1SIvan Mikhaylov interrupts = <24 0x4 7 0x84>; 1269eec6cb1SIvan Mikhaylov }; 1279eec6cb1SIvan Mikhaylov 1289eec6cb1SIvan Mikhaylov UIC1_4: uic1_4 { 1299eec6cb1SIvan Mikhaylov #address-cells = <0>; 1309eec6cb1SIvan Mikhaylov #size-cells = <0>; 1319eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1329eec6cb1SIvan Mikhaylov 1339eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1349eec6cb1SIvan Mikhaylov interrupt-controller; 1359eec6cb1SIvan Mikhaylov cell-index = <5>; 1369eec6cb1SIvan Mikhaylov dcr-reg = <0x368 0x8>; 1379eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 1389eec6cb1SIvan Mikhaylov interrupts = <25 0x4 8 0x84>; 1399eec6cb1SIvan Mikhaylov }; 1409eec6cb1SIvan Mikhaylov 1419eec6cb1SIvan Mikhaylov UIC1_5: uic1_5 { 1429eec6cb1SIvan Mikhaylov #address-cells = <0>; 1439eec6cb1SIvan Mikhaylov #size-cells = <0>; 1449eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1459eec6cb1SIvan Mikhaylov 1469eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1479eec6cb1SIvan Mikhaylov interrupt-controller; 1489eec6cb1SIvan Mikhaylov cell-index = <6>; 1499eec6cb1SIvan Mikhaylov dcr-reg = <0x370 0x8>; 1509eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 1519eec6cb1SIvan Mikhaylov interrupts = <26 0x4 9 0x84>; 1529eec6cb1SIvan Mikhaylov }; 1539eec6cb1SIvan Mikhaylov 1549eec6cb1SIvan Mikhaylov /* 2nd level UICs for FSI */ 1559eec6cb1SIvan Mikhaylov UIC2_0: uic2_0 { 1569eec6cb1SIvan Mikhaylov #address-cells = <0>; 1579eec6cb1SIvan Mikhaylov #size-cells = <0>; 1589eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1599eec6cb1SIvan Mikhaylov 1609eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1619eec6cb1SIvan Mikhaylov interrupt-controller; 1629eec6cb1SIvan Mikhaylov cell-index = <7>; 1639eec6cb1SIvan Mikhaylov dcr-reg = <0x2d0 0x8>; 1649eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 1659eec6cb1SIvan Mikhaylov interrupts = <16 0x4 0 0x84>; 1669eec6cb1SIvan Mikhaylov }; 1679eec6cb1SIvan Mikhaylov 1689eec6cb1SIvan Mikhaylov UIC2_1: uic2_1 { 1699eec6cb1SIvan Mikhaylov #address-cells = <0>; 1709eec6cb1SIvan Mikhaylov #size-cells = <0>; 1719eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1729eec6cb1SIvan Mikhaylov 1739eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1749eec6cb1SIvan Mikhaylov interrupt-controller; 1759eec6cb1SIvan Mikhaylov cell-index = <8>; 1769eec6cb1SIvan Mikhaylov dcr-reg = <0x2d8 0x8>; 1779eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 1789eec6cb1SIvan Mikhaylov interrupts = <17 0x4 1 0x84>; 1799eec6cb1SIvan Mikhaylov }; 1809eec6cb1SIvan Mikhaylov 1819eec6cb1SIvan Mikhaylov UIC2_2: uic2_2 { 1829eec6cb1SIvan Mikhaylov #address-cells = <0>; 1839eec6cb1SIvan Mikhaylov #size-cells = <0>; 1849eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1859eec6cb1SIvan Mikhaylov 1869eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 1879eec6cb1SIvan Mikhaylov interrupt-controller; 1889eec6cb1SIvan Mikhaylov cell-index = <9>; 1899eec6cb1SIvan Mikhaylov dcr-reg = <0x2e0 0x8>; 1909eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 1919eec6cb1SIvan Mikhaylov interrupts = <18 0x4 2 0x84>; 1929eec6cb1SIvan Mikhaylov }; 1939eec6cb1SIvan Mikhaylov 1949eec6cb1SIvan Mikhaylov UIC2_3: uic2_3 { 1959eec6cb1SIvan Mikhaylov #address-cells = <0>; 1969eec6cb1SIvan Mikhaylov #size-cells = <0>; 1979eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 1989eec6cb1SIvan Mikhaylov 1999eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2009eec6cb1SIvan Mikhaylov interrupt-controller; 2019eec6cb1SIvan Mikhaylov cell-index = <10>; 2029eec6cb1SIvan Mikhaylov dcr-reg = <0x2e8 0x8>; 2039eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2049eec6cb1SIvan Mikhaylov interrupts = <19 0x4 3 0x84>; 2059eec6cb1SIvan Mikhaylov }; 2069eec6cb1SIvan Mikhaylov 2079eec6cb1SIvan Mikhaylov UIC2_4: uic2_4 { 2089eec6cb1SIvan Mikhaylov #address-cells = <0>; 2099eec6cb1SIvan Mikhaylov #size-cells = <0>; 2109eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2119eec6cb1SIvan Mikhaylov 2129eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2139eec6cb1SIvan Mikhaylov interrupt-controller; 2149eec6cb1SIvan Mikhaylov cell-index = <11>; 2159eec6cb1SIvan Mikhaylov dcr-reg = <0x2f0 0x8>; 2169eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2179eec6cb1SIvan Mikhaylov interrupts = <20 0x4 4 0x84>; 2189eec6cb1SIvan Mikhaylov }; 2199eec6cb1SIvan Mikhaylov 2209eec6cb1SIvan Mikhaylov UIC2_5: uic2_5 { 2219eec6cb1SIvan Mikhaylov #address-cells = <0>; 2229eec6cb1SIvan Mikhaylov #size-cells = <0>; 2239eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2249eec6cb1SIvan Mikhaylov 2259eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2269eec6cb1SIvan Mikhaylov interrupt-controller; 2279eec6cb1SIvan Mikhaylov cell-index = <12>; 2289eec6cb1SIvan Mikhaylov dcr-reg = <0x2f8 0x8>; 2299eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2309eec6cb1SIvan Mikhaylov interrupts = <21 0x4 5 0x84>; 2319eec6cb1SIvan Mikhaylov }; 2329eec6cb1SIvan Mikhaylov 2339eec6cb1SIvan Mikhaylov UIC2_6: uic2_6 { 2349eec6cb1SIvan Mikhaylov #address-cells = <0>; 2359eec6cb1SIvan Mikhaylov #size-cells = <0>; 2369eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2379eec6cb1SIvan Mikhaylov 2389eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2399eec6cb1SIvan Mikhaylov interrupt-controller; 2409eec6cb1SIvan Mikhaylov cell-index = <13>; 2419eec6cb1SIvan Mikhaylov dcr-reg = <0x300 0x8>; 2429eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2439eec6cb1SIvan Mikhaylov interrupts = <22 0x4 6 0x84>; 2449eec6cb1SIvan Mikhaylov }; 2459eec6cb1SIvan Mikhaylov 2469eec6cb1SIvan Mikhaylov UIC2_7: uic2_7 { 2479eec6cb1SIvan Mikhaylov #address-cells = <0>; 2489eec6cb1SIvan Mikhaylov #size-cells = <0>; 2499eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2509eec6cb1SIvan Mikhaylov 2519eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2529eec6cb1SIvan Mikhaylov interrupt-controller; 2539eec6cb1SIvan Mikhaylov cell-index = <14>; 2549eec6cb1SIvan Mikhaylov dcr-reg = <0x308 0x8>; 2559eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2569eec6cb1SIvan Mikhaylov interrupts = <23 0x4 7 0x84>; 2579eec6cb1SIvan Mikhaylov }; 2589eec6cb1SIvan Mikhaylov 2599eec6cb1SIvan Mikhaylov UIC2_8: uic2_8 { 2609eec6cb1SIvan Mikhaylov #address-cells = <0>; 2619eec6cb1SIvan Mikhaylov #size-cells = <0>; 2629eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2639eec6cb1SIvan Mikhaylov 2649eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2659eec6cb1SIvan Mikhaylov interrupt-controller; 2669eec6cb1SIvan Mikhaylov cell-index = <15>; 2679eec6cb1SIvan Mikhaylov dcr-reg = <0x310 0x8>; 2689eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2699eec6cb1SIvan Mikhaylov interrupts = <24 0x4 8 0x84>; 2709eec6cb1SIvan Mikhaylov }; 2719eec6cb1SIvan Mikhaylov 2729eec6cb1SIvan Mikhaylov UIC2_9: uic2_9 { 2739eec6cb1SIvan Mikhaylov #address-cells = <0>; 2749eec6cb1SIvan Mikhaylov #size-cells = <0>; 2759eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2769eec6cb1SIvan Mikhaylov 2779eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2789eec6cb1SIvan Mikhaylov interrupt-controller; 2799eec6cb1SIvan Mikhaylov cell-index = <16>; 2809eec6cb1SIvan Mikhaylov dcr-reg = <0x318 0x8>; 2819eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2829eec6cb1SIvan Mikhaylov interrupts = <25 0x4 9 0x84>; 2839eec6cb1SIvan Mikhaylov }; 2849eec6cb1SIvan Mikhaylov 2859eec6cb1SIvan Mikhaylov UIC2_10: uic2_10 { 2869eec6cb1SIvan Mikhaylov #address-cells = <0>; 2879eec6cb1SIvan Mikhaylov #size-cells = <0>; 2889eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 2899eec6cb1SIvan Mikhaylov 2909eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 2919eec6cb1SIvan Mikhaylov interrupt-controller; 2929eec6cb1SIvan Mikhaylov cell-index = <17>; 2939eec6cb1SIvan Mikhaylov dcr-reg = <0x320 0x8>; 2949eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 2959eec6cb1SIvan Mikhaylov interrupts = <26 0x4 10 0x84>; 2969eec6cb1SIvan Mikhaylov }; 2979eec6cb1SIvan Mikhaylov 2989eec6cb1SIvan Mikhaylov UIC2_11: uic2_11 { 2999eec6cb1SIvan Mikhaylov #address-cells = <0>; 3009eec6cb1SIvan Mikhaylov #size-cells = <0>; 3019eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3029eec6cb1SIvan Mikhaylov 3039eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 3049eec6cb1SIvan Mikhaylov interrupt-controller; 3059eec6cb1SIvan Mikhaylov cell-index = <18>; 3069eec6cb1SIvan Mikhaylov dcr-reg = <0x328 0x8>; 3079eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 3089eec6cb1SIvan Mikhaylov interrupts = <27 0x4 11 0x84>; 3099eec6cb1SIvan Mikhaylov }; 3109eec6cb1SIvan Mikhaylov 3119eec6cb1SIvan Mikhaylov UIC2_12: uic2_12 { 3129eec6cb1SIvan Mikhaylov #address-cells = <0>; 3139eec6cb1SIvan Mikhaylov #size-cells = <0>; 3149eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3159eec6cb1SIvan Mikhaylov 3169eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 3179eec6cb1SIvan Mikhaylov interrupt-controller; 3189eec6cb1SIvan Mikhaylov cell-index = <19>; 3199eec6cb1SIvan Mikhaylov dcr-reg = <0x330 0x8>; 3209eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 3219eec6cb1SIvan Mikhaylov interrupts = <28 0x4 12 0x84>; 3229eec6cb1SIvan Mikhaylov }; 3239eec6cb1SIvan Mikhaylov 3249eec6cb1SIvan Mikhaylov UIC2_13: uic2_13 { 3259eec6cb1SIvan Mikhaylov #address-cells = <0>; 3269eec6cb1SIvan Mikhaylov #size-cells = <0>; 3279eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3289eec6cb1SIvan Mikhaylov 3299eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 3309eec6cb1SIvan Mikhaylov interrupt-controller; 3319eec6cb1SIvan Mikhaylov cell-index = <20>; 3329eec6cb1SIvan Mikhaylov dcr-reg = <0x338 0x8>; 3339eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 3349eec6cb1SIvan Mikhaylov interrupts = <29 0x4 13 0x84>; 3359eec6cb1SIvan Mikhaylov }; 3369eec6cb1SIvan Mikhaylov 3379eec6cb1SIvan Mikhaylov UIC2_14: uic2_14 { 3389eec6cb1SIvan Mikhaylov #address-cells = <0>; 3399eec6cb1SIvan Mikhaylov #size-cells = <0>; 3409eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3419eec6cb1SIvan Mikhaylov 3429eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 3439eec6cb1SIvan Mikhaylov interrupt-controller; 3449eec6cb1SIvan Mikhaylov cell-index = <21>; 3459eec6cb1SIvan Mikhaylov dcr-reg = <0x340 0x8>; 3469eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 3479eec6cb1SIvan Mikhaylov interrupts = <30 0x4 14 0x84>; 3489eec6cb1SIvan Mikhaylov }; 3499eec6cb1SIvan Mikhaylov 3509eec6cb1SIvan Mikhaylov UIC2_15: uic2_15 { 3519eec6cb1SIvan Mikhaylov #address-cells = <0>; 3529eec6cb1SIvan Mikhaylov #size-cells = <0>; 3539eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3549eec6cb1SIvan Mikhaylov 3559eec6cb1SIvan Mikhaylov compatible = "ibm,uic"; 3569eec6cb1SIvan Mikhaylov interrupt-controller; 3579eec6cb1SIvan Mikhaylov cell-index = <22>; 3589eec6cb1SIvan Mikhaylov dcr-reg = <0x348 0x8>; 3599eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_0>; 3609eec6cb1SIvan Mikhaylov interrupts = <31 0x4 15 0x84>; 3619eec6cb1SIvan Mikhaylov }; 3629eec6cb1SIvan Mikhaylov 3639eec6cb1SIvan Mikhaylov plb6 { 3649eec6cb1SIvan Mikhaylov compatible = "ibm,plb6"; 3659eec6cb1SIvan Mikhaylov #address-cells = <2>; 3669eec6cb1SIvan Mikhaylov #size-cells = <1>; 3679eec6cb1SIvan Mikhaylov ranges; 3689eec6cb1SIvan Mikhaylov 3699eec6cb1SIvan Mikhaylov MCW0: memory-controller-wrapper { 3709eec6cb1SIvan Mikhaylov compatible = "ibm,cw-476fsp2"; 3719eec6cb1SIvan Mikhaylov dcr-reg = <0x11111800 0x40>; 3729eec6cb1SIvan Mikhaylov }; 3739eec6cb1SIvan Mikhaylov 3749eec6cb1SIvan Mikhaylov MCIF0: memory-controller { 3759eec6cb1SIvan Mikhaylov compatible = "ibm,sdram-476fsp2", "ibm,sdram-4xx-ddr3"; 3769eec6cb1SIvan Mikhaylov dcr-reg = <0x11120000 0x10000>; 3779eec6cb1SIvan Mikhaylov mcer-device = <&MCW0>; 3789eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 3799eec6cb1SIvan Mikhaylov interrupts = <10 0x84 /* ECC UE */ 3809eec6cb1SIvan Mikhaylov 11 0x84>; /* ECC CE */ 3819eec6cb1SIvan Mikhaylov }; 3829eec6cb1SIvan Mikhaylov }; 3839eec6cb1SIvan Mikhaylov 3849eec6cb1SIvan Mikhaylov plb4 { 3859eec6cb1SIvan Mikhaylov compatible = "ibm,plb4"; 3869eec6cb1SIvan Mikhaylov #address-cells = <1>; 3879eec6cb1SIvan Mikhaylov #size-cells = <1>; 3889eec6cb1SIvan Mikhaylov ranges = <0x00000000 0x00000010 0x00000000 0x80000000 3899eec6cb1SIvan Mikhaylov 0x80000000 0x00000010 0x80000000 0x80000000>; 3909eec6cb1SIvan Mikhaylov clock-frequency = <333333334>; 3919eec6cb1SIvan Mikhaylov 3929eec6cb1SIvan Mikhaylov plb6-system-hung-irq { 3939eec6cb1SIvan Mikhaylov compatible = "ibm,bus-error-irq"; 3949eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 3959eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 3969eec6cb1SIvan Mikhaylov interrupts = <0 0x84>; 3979eec6cb1SIvan Mikhaylov }; 3989eec6cb1SIvan Mikhaylov 3999eec6cb1SIvan Mikhaylov l2-error-irq { 4009eec6cb1SIvan Mikhaylov compatible = "ibm,bus-error-irq"; 4019eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4029eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 4039eec6cb1SIvan Mikhaylov interrupts = <20 0x84>; 4049eec6cb1SIvan Mikhaylov }; 4059eec6cb1SIvan Mikhaylov 4069eec6cb1SIvan Mikhaylov plb6-plb4-irq { 4079eec6cb1SIvan Mikhaylov compatible = "ibm,bus-error-irq"; 4089eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4099eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 4109eec6cb1SIvan Mikhaylov interrupts = <1 0x84>; 4119eec6cb1SIvan Mikhaylov }; 4129eec6cb1SIvan Mikhaylov 4139eec6cb1SIvan Mikhaylov plb4-ahb-irq { 4149eec6cb1SIvan Mikhaylov compatible = "ibm,bus-error-irq"; 4159eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4169eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_3>; 4179eec6cb1SIvan Mikhaylov interrupts = <20 0x84>; 4189eec6cb1SIvan Mikhaylov }; 4199eec6cb1SIvan Mikhaylov 4209eec6cb1SIvan Mikhaylov opbd-error-irq { 4219eec6cb1SIvan Mikhaylov compatible = "ibm,opbd-error-irq"; 4229eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4239eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_4>; 4249eec6cb1SIvan Mikhaylov interrupts = <5 0x84>; 4259eec6cb1SIvan Mikhaylov }; 4269eec6cb1SIvan Mikhaylov 4279eec6cb1SIvan Mikhaylov cmu-error-irq { 4289eec6cb1SIvan Mikhaylov compatible = "ibm,cmu-error-irq"; 4299eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4309eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 4319eec6cb1SIvan Mikhaylov interrupts = <28 0x84>; 4329eec6cb1SIvan Mikhaylov }; 4339eec6cb1SIvan Mikhaylov 4349eec6cb1SIvan Mikhaylov conf-error-irq { 4359eec6cb1SIvan Mikhaylov compatible = "ibm,conf-error-irq"; 4369eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4379eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_4>; 4389eec6cb1SIvan Mikhaylov interrupts = <11 0x84>; 4399eec6cb1SIvan Mikhaylov }; 4409eec6cb1SIvan Mikhaylov 4419eec6cb1SIvan Mikhaylov mc-ue-irq { 4429eec6cb1SIvan Mikhaylov compatible = "ibm,mc-ue-irq"; 4439eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4449eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 4459eec6cb1SIvan Mikhaylov interrupts = <10 0x84>; 4469eec6cb1SIvan Mikhaylov }; 4479eec6cb1SIvan Mikhaylov 4489eec6cb1SIvan Mikhaylov reset-warning-irq { 4499eec6cb1SIvan Mikhaylov compatible = "ibm,reset-warning-irq"; 4509eec6cb1SIvan Mikhaylov #interrupt-cells = <2>; 4519eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 4529eec6cb1SIvan Mikhaylov interrupts = <17 0x84>; 4539eec6cb1SIvan Mikhaylov }; 4549eec6cb1SIvan Mikhaylov 4559eec6cb1SIvan Mikhaylov MAL0: mcmal0 { 4569eec6cb1SIvan Mikhaylov #interrupt-cells = <1>; 4579eec6cb1SIvan Mikhaylov #address-cells = <0>; 4589eec6cb1SIvan Mikhaylov #size-cells = <0>; 4599eec6cb1SIvan Mikhaylov compatible = "ibm,mcmal"; 4609eec6cb1SIvan Mikhaylov dcr-reg = <0x80 0x80>; 4619eec6cb1SIvan Mikhaylov num-tx-chans = <1>; 4629eec6cb1SIvan Mikhaylov num-rx-chans = <1>; 4639eec6cb1SIvan Mikhaylov interrupt-parent = <&MAL0>; 4649eec6cb1SIvan Mikhaylov interrupts = <0 1 2 3 4>; 4659eec6cb1SIvan Mikhaylov /* index interrupt-parent interrupt# type */ 4669eec6cb1SIvan Mikhaylov interrupt-map = </*TXEOB*/ 0 &UIC1_2 4 0x4 4679eec6cb1SIvan Mikhaylov /*RXEOB*/ 1 &UIC1_2 3 0x4 4689eec6cb1SIvan Mikhaylov /*SERR*/ 2 &UIC1_2 7 0x4 4699eec6cb1SIvan Mikhaylov /*TXDE*/ 3 &UIC1_2 6 0x4 4709eec6cb1SIvan Mikhaylov /*RXDE*/ 4 &UIC1_2 5 0x4>; 4719eec6cb1SIvan Mikhaylov }; 4729eec6cb1SIvan Mikhaylov 4739eec6cb1SIvan Mikhaylov MAL1: mcmal1 { 4749eec6cb1SIvan Mikhaylov #interrupt-cells = <1>; 4759eec6cb1SIvan Mikhaylov #address-cells = <0>; 4769eec6cb1SIvan Mikhaylov #size-cells = <0>; 4779eec6cb1SIvan Mikhaylov compatible = "ibm,mcmal"; 4789eec6cb1SIvan Mikhaylov dcr-reg = <0x100 0x80>; 4799eec6cb1SIvan Mikhaylov num-tx-chans = <1>; 4809eec6cb1SIvan Mikhaylov num-rx-chans = <1>; 4819eec6cb1SIvan Mikhaylov interrupt-parent = <&MAL1>; 4829eec6cb1SIvan Mikhaylov interrupts = <0 1 2 3 4>; 4839eec6cb1SIvan Mikhaylov /* index interrupt-parent interrupt# type */ 4849eec6cb1SIvan Mikhaylov interrupt-map = </*TXEOB*/ 0 &UIC1_2 12 0x4 4859eec6cb1SIvan Mikhaylov /*RXEOB*/ 1 &UIC1_2 11 0x4 4869eec6cb1SIvan Mikhaylov /*SERR*/ 2 &UIC1_2 15 0x4 4879eec6cb1SIvan Mikhaylov /*TXDE*/ 3 &UIC1_2 14 0x4 4889eec6cb1SIvan Mikhaylov /*RXDE*/ 4 &UIC1_2 13 0x4>; 4899eec6cb1SIvan Mikhaylov }; 4909eec6cb1SIvan Mikhaylov 491754f0309SIvan Mikhaylov mmc0: mmc@20c0000 { 492754f0309SIvan Mikhaylov compatible = "st,sdhci-stih407", "st,sdhci"; 493754f0309SIvan Mikhaylov reg = <0x020c0000 0x20000>; 494754f0309SIvan Mikhaylov reg-names = "mmc"; 495754f0309SIvan Mikhaylov interrupts = <21 0x4>; 496754f0309SIvan Mikhaylov interrupt-parent = <&UIC1_3>; 497754f0309SIvan Mikhaylov interrupt-names = "mmcirq"; 498754f0309SIvan Mikhaylov pinctrl-names = "default"; 499754f0309SIvan Mikhaylov pinctrl-0 = <>; 500754f0309SIvan Mikhaylov clock-names = "mmc"; 501754f0309SIvan Mikhaylov clocks = <&mmc_clk>; 502754f0309SIvan Mikhaylov bus-width = <4>; 503754f0309SIvan Mikhaylov non-removable; 504754f0309SIvan Mikhaylov sd-uhs-sdr50; 505754f0309SIvan Mikhaylov sd-uhs-sdr104; 506754f0309SIvan Mikhaylov sd-uhs-ddr50; 507754f0309SIvan Mikhaylov }; 508754f0309SIvan Mikhaylov 5099eec6cb1SIvan Mikhaylov opb { 5109eec6cb1SIvan Mikhaylov compatible = "ibm,opb"; 5119eec6cb1SIvan Mikhaylov #address-cells = <1>; 5129eec6cb1SIvan Mikhaylov #size-cells = <1>; 5139eec6cb1SIvan Mikhaylov ranges; // pass-thru to parent bus 5149eec6cb1SIvan Mikhaylov clock-frequency = <83333334>; 5159eec6cb1SIvan Mikhaylov 5169eec6cb1SIvan Mikhaylov EMAC0: ethernet@b0000000 { 5179eec6cb1SIvan Mikhaylov linux,network-index = <0>; 5189eec6cb1SIvan Mikhaylov device_type = "network"; 5199eec6cb1SIvan Mikhaylov compatible = "ibm,emac4sync"; 5209eec6cb1SIvan Mikhaylov has-inverted-stacr-oc; 5219eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_2>; 5229eec6cb1SIvan Mikhaylov interrupts = <1 0x4 0 0x4>; 5239eec6cb1SIvan Mikhaylov reg = <0xb0000000 0x100>; 5249eec6cb1SIvan Mikhaylov local-mac-address = [000000000000]; /* Filled in by 5259eec6cb1SIvan Mikhaylov cuboot */ 5269eec6cb1SIvan Mikhaylov mal-device = <&MAL0>; 5279eec6cb1SIvan Mikhaylov mal-tx-channel = <0>; 5289eec6cb1SIvan Mikhaylov mal-rx-channel = <0>; 5299eec6cb1SIvan Mikhaylov cell-index = <0>; 5309eec6cb1SIvan Mikhaylov max-frame-size = <1500>; 5319eec6cb1SIvan Mikhaylov rx-fifo-size = <4096>; 5329eec6cb1SIvan Mikhaylov tx-fifo-size = <4096>; 5339eec6cb1SIvan Mikhaylov rx-fifo-size-gige = <16384>; 5349eec6cb1SIvan Mikhaylov tx-fifo-size-gige = <8192>; 5359eec6cb1SIvan Mikhaylov phy-address = <1>; 5369eec6cb1SIvan Mikhaylov phy-mode = "rgmii"; 5379eec6cb1SIvan Mikhaylov phy-map = <00000003>; 5389eec6cb1SIvan Mikhaylov rgmii-device = <&RGMII>; 5399eec6cb1SIvan Mikhaylov rgmii-channel = <0>; 5409eec6cb1SIvan Mikhaylov }; 5419eec6cb1SIvan Mikhaylov 5429eec6cb1SIvan Mikhaylov EMAC1: ethernet@b0000100 { 5439eec6cb1SIvan Mikhaylov linux,network-index = <1>; 5449eec6cb1SIvan Mikhaylov device_type = "network"; 5459eec6cb1SIvan Mikhaylov compatible = "ibm,emac4sync"; 5469eec6cb1SIvan Mikhaylov has-inverted-stacr-oc; 5479eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_2>; 5489eec6cb1SIvan Mikhaylov interrupts = <9 0x4 8 0x4>; 5499eec6cb1SIvan Mikhaylov reg = <0xb0000100 0x100>; 5509eec6cb1SIvan Mikhaylov local-mac-address = [000000000000]; /* Filled in by 5519eec6cb1SIvan Mikhaylov cuboot */ 5529eec6cb1SIvan Mikhaylov mal-device = <&MAL1>; 5539eec6cb1SIvan Mikhaylov mal-tx-channel = <0>; 5549eec6cb1SIvan Mikhaylov mal-rx-channel = <0>; 5559eec6cb1SIvan Mikhaylov cell-index = <1>; 5569eec6cb1SIvan Mikhaylov max-frame-size = <1500>; 5579eec6cb1SIvan Mikhaylov rx-fifo-size = <4096>; 5589eec6cb1SIvan Mikhaylov tx-fifo-size = <4096>; 5599eec6cb1SIvan Mikhaylov rx-fifo-size-gige = <16384>; 5609eec6cb1SIvan Mikhaylov tx-fifo-size-gige = <8192>; 5619eec6cb1SIvan Mikhaylov phy-address = <2>; 5629eec6cb1SIvan Mikhaylov phy-mode = "rgmii"; 5639eec6cb1SIvan Mikhaylov phy-map = <00000003>; 5649eec6cb1SIvan Mikhaylov rgmii-device = <&RGMII>; 5659eec6cb1SIvan Mikhaylov rgmii-channel = <1>; 5669eec6cb1SIvan Mikhaylov }; 5679eec6cb1SIvan Mikhaylov 5689eec6cb1SIvan Mikhaylov RGMII: rgmii@b0000600 { 5699eec6cb1SIvan Mikhaylov compatible = "ibm,rgmii"; 5709eec6cb1SIvan Mikhaylov has-mdio; 5719eec6cb1SIvan Mikhaylov reg = <0xb0000600 0x8>; 5729eec6cb1SIvan Mikhaylov }; 5739eec6cb1SIvan Mikhaylov 5749eec6cb1SIvan Mikhaylov UART0: serial@b0020000 { 5759eec6cb1SIvan Mikhaylov device_type = "serial"; 5769eec6cb1SIvan Mikhaylov compatible = "ns16550"; 5779eec6cb1SIvan Mikhaylov reg = <0xb0020000 0x8>; 5789eec6cb1SIvan Mikhaylov virtual-reg = <0xb0020000>; 5799eec6cb1SIvan Mikhaylov clock-frequency = <20833333>; 5809eec6cb1SIvan Mikhaylov current-speed = <115200>; 5819eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC0>; 5829eec6cb1SIvan Mikhaylov interrupts = <31 0x4>; 5839eec6cb1SIvan Mikhaylov }; 5849eec6cb1SIvan Mikhaylov }; 5859eec6cb1SIvan Mikhaylov 586600ecc19SMathieu Malaterre OHCI1: ohci@2040000 { 5879eec6cb1SIvan Mikhaylov compatible = "ohci-le"; 5889eec6cb1SIvan Mikhaylov reg = <0x02040000 0xa0>; 5899eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_3>; 5909eec6cb1SIvan Mikhaylov interrupts = <28 0x8 29 0x8>; 5919eec6cb1SIvan Mikhaylov }; 5929eec6cb1SIvan Mikhaylov 593600ecc19SMathieu Malaterre OHCI2: ohci@2080000 { 5949eec6cb1SIvan Mikhaylov compatible = "ohci-le"; 5959eec6cb1SIvan Mikhaylov reg = <0x02080000 0xa0>; 5969eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_3>; 5979eec6cb1SIvan Mikhaylov interrupts = <30 0x8 31 0x8>; 5989eec6cb1SIvan Mikhaylov }; 5999eec6cb1SIvan Mikhaylov 600600ecc19SMathieu Malaterre EHCI: ehci@2000000 { 6019eec6cb1SIvan Mikhaylov compatible = "usb-ehci"; 6029eec6cb1SIvan Mikhaylov reg = <0x02000000 0xa4>; 6039eec6cb1SIvan Mikhaylov interrupt-parent = <&UIC1_3>; 6049eec6cb1SIvan Mikhaylov interrupts = <23 0x4>; 6059eec6cb1SIvan Mikhaylov }; 6069eec6cb1SIvan Mikhaylov 6079eec6cb1SIvan Mikhaylov }; 6089eec6cb1SIvan Mikhaylov 6099eec6cb1SIvan Mikhaylov chosen { 610*78e5dfeaSRob Herring stdout-path = "/plb/opb/serial@b0020000"; 6119eec6cb1SIvan Mikhaylov bootargs = "console=ttyS0,115200 rw log_buf_len=32768 debug"; 6129eec6cb1SIvan Mikhaylov }; 6139eec6cb1SIvan Mikhaylov}; 614