1*ee0a3f56SAlexandr Smirnov/* 2*ee0a3f56SAlexandr Smirnov * Device Tree Source for Emerson KSI8560 3*ee0a3f56SAlexandr Smirnov * 4*ee0a3f56SAlexandr Smirnov * Author: Alexandr Smirnov <asmirnov@ru.mvista.com> 5*ee0a3f56SAlexandr Smirnov * 6*ee0a3f56SAlexandr Smirnov * Based on mpc8560ads.dts 7*ee0a3f56SAlexandr Smirnov * 8*ee0a3f56SAlexandr Smirnov * 2008 (c) MontaVista, Software, Inc. This file is licensed under 9*ee0a3f56SAlexandr Smirnov * the terms of the GNU General Public License version 2. This program 10*ee0a3f56SAlexandr Smirnov * is licensed "as is" without any warranty of any kind, whether express 11*ee0a3f56SAlexandr Smirnov * or implied. 12*ee0a3f56SAlexandr Smirnov * 13*ee0a3f56SAlexandr Smirnov */ 14*ee0a3f56SAlexandr Smirnov 15*ee0a3f56SAlexandr Smirnov/dts-v1/; 16*ee0a3f56SAlexandr Smirnov 17*ee0a3f56SAlexandr Smirnov/ { 18*ee0a3f56SAlexandr Smirnov model = "KSI8560"; 19*ee0a3f56SAlexandr Smirnov compatible = "emerson,KSI8560"; 20*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 21*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 22*ee0a3f56SAlexandr Smirnov 23*ee0a3f56SAlexandr Smirnov aliases { 24*ee0a3f56SAlexandr Smirnov ethernet0 = &enet0; 25*ee0a3f56SAlexandr Smirnov ethernet1 = &enet1; 26*ee0a3f56SAlexandr Smirnov ethernet2 = &enet2; 27*ee0a3f56SAlexandr Smirnov }; 28*ee0a3f56SAlexandr Smirnov 29*ee0a3f56SAlexandr Smirnov cpus { 30*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 31*ee0a3f56SAlexandr Smirnov #size-cells = <0>; 32*ee0a3f56SAlexandr Smirnov 33*ee0a3f56SAlexandr Smirnov PowerPC,8560@0 { 34*ee0a3f56SAlexandr Smirnov device_type = "cpu"; 35*ee0a3f56SAlexandr Smirnov reg = <0>; 36*ee0a3f56SAlexandr Smirnov d-cache-line-size = <32>; 37*ee0a3f56SAlexandr Smirnov i-cache-line-size = <32>; 38*ee0a3f56SAlexandr Smirnov d-cache-size = <0x8000>; /* L1, 32K */ 39*ee0a3f56SAlexandr Smirnov i-cache-size = <0x8000>; /* L1, 32K */ 40*ee0a3f56SAlexandr Smirnov timebase-frequency = <0>; /* From U-boot */ 41*ee0a3f56SAlexandr Smirnov bus-frequency = <0>; /* From U-boot */ 42*ee0a3f56SAlexandr Smirnov clock-frequency = <0>; /* From U-boot */ 43*ee0a3f56SAlexandr Smirnov }; 44*ee0a3f56SAlexandr Smirnov }; 45*ee0a3f56SAlexandr Smirnov 46*ee0a3f56SAlexandr Smirnov memory { 47*ee0a3f56SAlexandr Smirnov device_type = "memory"; 48*ee0a3f56SAlexandr Smirnov reg = <0x00000000 0x10000000>; /* Fixed by bootwrapper */ 49*ee0a3f56SAlexandr Smirnov }; 50*ee0a3f56SAlexandr Smirnov 51*ee0a3f56SAlexandr Smirnov soc@fdf00000 { 52*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 53*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 54*ee0a3f56SAlexandr Smirnov device_type = "soc"; 55*ee0a3f56SAlexandr Smirnov ranges = <0x00000000 0xfdf00000 0x00100000>; 56*ee0a3f56SAlexandr Smirnov bus-frequency = <0>; /* Fixed by bootwrapper */ 57*ee0a3f56SAlexandr Smirnov 58*ee0a3f56SAlexandr Smirnov memory-controller@2000 { 59*ee0a3f56SAlexandr Smirnov compatible = "fsl,8540-memory-controller"; 60*ee0a3f56SAlexandr Smirnov reg = <0x2000 0x1000>; 61*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 62*ee0a3f56SAlexandr Smirnov interrupts = <0x12 0x2>; 63*ee0a3f56SAlexandr Smirnov }; 64*ee0a3f56SAlexandr Smirnov 65*ee0a3f56SAlexandr Smirnov l2-cache-controller@20000 { 66*ee0a3f56SAlexandr Smirnov compatible = "fsl,8540-l2-cache-controller"; 67*ee0a3f56SAlexandr Smirnov reg = <0x20000 0x1000>; 68*ee0a3f56SAlexandr Smirnov cache-line-size = <0x20>; /* 32 bytes */ 69*ee0a3f56SAlexandr Smirnov cache-size = <0x40000>; /* L2, 256K */ 70*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 71*ee0a3f56SAlexandr Smirnov interrupts = <0x10 0x2>; 72*ee0a3f56SAlexandr Smirnov }; 73*ee0a3f56SAlexandr Smirnov 74*ee0a3f56SAlexandr Smirnov i2c@3000 { 75*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 76*ee0a3f56SAlexandr Smirnov #size-cells = <0>; 77*ee0a3f56SAlexandr Smirnov cell-index = <0>; 78*ee0a3f56SAlexandr Smirnov compatible = "fsl-i2c"; 79*ee0a3f56SAlexandr Smirnov reg = <0x3000 0x100>; 80*ee0a3f56SAlexandr Smirnov interrupts = <0x2b 0x2>; 81*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 82*ee0a3f56SAlexandr Smirnov dfsrr; 83*ee0a3f56SAlexandr Smirnov }; 84*ee0a3f56SAlexandr Smirnov 85*ee0a3f56SAlexandr Smirnov mdio@24520 { /* For TSECs */ 86*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 87*ee0a3f56SAlexandr Smirnov #size-cells = <0>; 88*ee0a3f56SAlexandr Smirnov compatible = "fsl,gianfar-mdio"; 89*ee0a3f56SAlexandr Smirnov reg = <0x24520 0x20>; 90*ee0a3f56SAlexandr Smirnov 91*ee0a3f56SAlexandr Smirnov PHY1: ethernet-phy@1 { 92*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 93*ee0a3f56SAlexandr Smirnov reg = <0x1>; 94*ee0a3f56SAlexandr Smirnov device_type = "ethernet-phy"; 95*ee0a3f56SAlexandr Smirnov }; 96*ee0a3f56SAlexandr Smirnov 97*ee0a3f56SAlexandr Smirnov PHY2: ethernet-phy@2 { 98*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 99*ee0a3f56SAlexandr Smirnov reg = <0x2>; 100*ee0a3f56SAlexandr Smirnov device_type = "ethernet-phy"; 101*ee0a3f56SAlexandr Smirnov }; 102*ee0a3f56SAlexandr Smirnov }; 103*ee0a3f56SAlexandr Smirnov 104*ee0a3f56SAlexandr Smirnov enet0: ethernet@24000 { 105*ee0a3f56SAlexandr Smirnov device_type = "network"; 106*ee0a3f56SAlexandr Smirnov model = "TSEC"; 107*ee0a3f56SAlexandr Smirnov compatible = "gianfar"; 108*ee0a3f56SAlexandr Smirnov reg = <0x24000 0x1000>; 109*ee0a3f56SAlexandr Smirnov /* Mac address filled in by bootwrapper */ 110*ee0a3f56SAlexandr Smirnov local-mac-address = [ 00 00 00 00 00 00 ]; 111*ee0a3f56SAlexandr Smirnov interrupts = <0x1d 0x2 0x1e 0x2 0x22 0x2>; 112*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 113*ee0a3f56SAlexandr Smirnov phy-handle = <&PHY1>; 114*ee0a3f56SAlexandr Smirnov }; 115*ee0a3f56SAlexandr Smirnov 116*ee0a3f56SAlexandr Smirnov enet1: ethernet@25000 { 117*ee0a3f56SAlexandr Smirnov device_type = "network"; 118*ee0a3f56SAlexandr Smirnov model = "TSEC"; 119*ee0a3f56SAlexandr Smirnov compatible = "gianfar"; 120*ee0a3f56SAlexandr Smirnov reg = <0x25000 0x1000>; 121*ee0a3f56SAlexandr Smirnov /* Mac address filled in by bootwrapper */ 122*ee0a3f56SAlexandr Smirnov local-mac-address = [ 00 00 00 00 00 00 ]; 123*ee0a3f56SAlexandr Smirnov interrupts = <0x23 0x2 0x24 0x2 0x28 0x2>; 124*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 125*ee0a3f56SAlexandr Smirnov phy-handle = <&PHY2>; 126*ee0a3f56SAlexandr Smirnov }; 127*ee0a3f56SAlexandr Smirnov 128*ee0a3f56SAlexandr Smirnov MPIC: pic@40000 { 129*ee0a3f56SAlexandr Smirnov #address-cells = <0>; 130*ee0a3f56SAlexandr Smirnov #interrupt-cells = <2>; 131*ee0a3f56SAlexandr Smirnov interrupt-controller; 132*ee0a3f56SAlexandr Smirnov reg = <0x40000 0x40000>; 133*ee0a3f56SAlexandr Smirnov device_type = "open-pic"; 134*ee0a3f56SAlexandr Smirnov }; 135*ee0a3f56SAlexandr Smirnov 136*ee0a3f56SAlexandr Smirnov cpm@919c0 { 137*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 138*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 139*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-cpm", "fsl,cpm2"; 140*ee0a3f56SAlexandr Smirnov reg = <0x919c0 0x30>; 141*ee0a3f56SAlexandr Smirnov ranges; 142*ee0a3f56SAlexandr Smirnov 143*ee0a3f56SAlexandr Smirnov muram@80000 { 144*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 145*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 146*ee0a3f56SAlexandr Smirnov ranges = <0x0 0x80000 0x10000>; 147*ee0a3f56SAlexandr Smirnov 148*ee0a3f56SAlexandr Smirnov data@0 { 149*ee0a3f56SAlexandr Smirnov compatible = "fsl,cpm-muram-data"; 150*ee0a3f56SAlexandr Smirnov reg = <0x0 0x4000 0x9000 0x2000>; 151*ee0a3f56SAlexandr Smirnov }; 152*ee0a3f56SAlexandr Smirnov }; 153*ee0a3f56SAlexandr Smirnov 154*ee0a3f56SAlexandr Smirnov brg@919f0 { 155*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-brg", 156*ee0a3f56SAlexandr Smirnov "fsl,cpm2-brg", 157*ee0a3f56SAlexandr Smirnov "fsl,cpm-brg"; 158*ee0a3f56SAlexandr Smirnov reg = <0x919f0 0x10 0x915f0 0x10>; 159*ee0a3f56SAlexandr Smirnov clock-frequency = <165000000>; /* 166MHz */ 160*ee0a3f56SAlexandr Smirnov }; 161*ee0a3f56SAlexandr Smirnov 162*ee0a3f56SAlexandr Smirnov CPMPIC: pic@90c00 { 163*ee0a3f56SAlexandr Smirnov #address-cells = <0>; 164*ee0a3f56SAlexandr Smirnov #interrupt-cells = <2>; 165*ee0a3f56SAlexandr Smirnov interrupt-controller; 166*ee0a3f56SAlexandr Smirnov interrupts = <0x2e 0x2>; 167*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 168*ee0a3f56SAlexandr Smirnov reg = <0x90c00 0x80>; 169*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-cpm-pic", "fsl,cpm2-pic"; 170*ee0a3f56SAlexandr Smirnov }; 171*ee0a3f56SAlexandr Smirnov 172*ee0a3f56SAlexandr Smirnov serial@91a00 { 173*ee0a3f56SAlexandr Smirnov device_type = "serial"; 174*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-scc-uart", 175*ee0a3f56SAlexandr Smirnov "fsl,cpm2-scc-uart"; 176*ee0a3f56SAlexandr Smirnov reg = <0x91a00 0x20 0x88000 0x100>; 177*ee0a3f56SAlexandr Smirnov fsl,cpm-brg = <1>; 178*ee0a3f56SAlexandr Smirnov fsl,cpm-command = <0x800000>; 179*ee0a3f56SAlexandr Smirnov current-speed = <0x1c200>; 180*ee0a3f56SAlexandr Smirnov interrupts = <0x28 0x8>; 181*ee0a3f56SAlexandr Smirnov interrupt-parent = <&CPMPIC>; 182*ee0a3f56SAlexandr Smirnov }; 183*ee0a3f56SAlexandr Smirnov 184*ee0a3f56SAlexandr Smirnov serial@91a20 { 185*ee0a3f56SAlexandr Smirnov device_type = "serial"; 186*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-scc-uart", 187*ee0a3f56SAlexandr Smirnov "fsl,cpm2-scc-uart"; 188*ee0a3f56SAlexandr Smirnov reg = <0x91a20 0x20 0x88100 0x100>; 189*ee0a3f56SAlexandr Smirnov fsl,cpm-brg = <2>; 190*ee0a3f56SAlexandr Smirnov fsl,cpm-command = <0x4a00000>; 191*ee0a3f56SAlexandr Smirnov current-speed = <0x1c200>; 192*ee0a3f56SAlexandr Smirnov interrupts = <0x29 0x8>; 193*ee0a3f56SAlexandr Smirnov interrupt-parent = <&CPMPIC>; 194*ee0a3f56SAlexandr Smirnov }; 195*ee0a3f56SAlexandr Smirnov 196*ee0a3f56SAlexandr Smirnov mdio@90d00 { /* For FCCs */ 197*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 198*ee0a3f56SAlexandr Smirnov #size-cells = <0>; 199*ee0a3f56SAlexandr Smirnov compatible = "fsl,cpm2-mdio-bitbang"; 200*ee0a3f56SAlexandr Smirnov reg = <0x90d00 0x14>; 201*ee0a3f56SAlexandr Smirnov fsl,mdio-pin = <24>; 202*ee0a3f56SAlexandr Smirnov fsl,mdc-pin = <25>; 203*ee0a3f56SAlexandr Smirnov 204*ee0a3f56SAlexandr Smirnov PHY0: ethernet-phy@0 { 205*ee0a3f56SAlexandr Smirnov interrupt-parent = <&MPIC>; 206*ee0a3f56SAlexandr Smirnov reg = <0x0>; 207*ee0a3f56SAlexandr Smirnov device_type = "ethernet-phy"; 208*ee0a3f56SAlexandr Smirnov }; 209*ee0a3f56SAlexandr Smirnov }; 210*ee0a3f56SAlexandr Smirnov 211*ee0a3f56SAlexandr Smirnov enet2: ethernet@91300 { 212*ee0a3f56SAlexandr Smirnov device_type = "network"; 213*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-fcc-enet", 214*ee0a3f56SAlexandr Smirnov "fsl,cpm2-fcc-enet"; 215*ee0a3f56SAlexandr Smirnov reg = <0x91300 0x20 0x88400 0x100 0x91390 0x1>; 216*ee0a3f56SAlexandr Smirnov /* Mac address filled in by bootwrapper */ 217*ee0a3f56SAlexandr Smirnov local-mac-address = [ 00 00 00 00 00 00 ]; 218*ee0a3f56SAlexandr Smirnov fsl,cpm-command = <0x12000300>; 219*ee0a3f56SAlexandr Smirnov interrupts = <0x20 0x8>; 220*ee0a3f56SAlexandr Smirnov interrupt-parent = <&CPMPIC>; 221*ee0a3f56SAlexandr Smirnov phy-handle = <&PHY0>; 222*ee0a3f56SAlexandr Smirnov }; 223*ee0a3f56SAlexandr Smirnov }; 224*ee0a3f56SAlexandr Smirnov }; 225*ee0a3f56SAlexandr Smirnov 226*ee0a3f56SAlexandr Smirnov localbus@fdf05000 { 227*ee0a3f56SAlexandr Smirnov #address-cells = <2>; 228*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 229*ee0a3f56SAlexandr Smirnov compatible = "fsl,mpc8560-localbus"; 230*ee0a3f56SAlexandr Smirnov reg = <0xfdf05000 0x68>; 231*ee0a3f56SAlexandr Smirnov 232*ee0a3f56SAlexandr Smirnov ranges = <0x0 0x0 0xe0000000 0x00800000 233*ee0a3f56SAlexandr Smirnov 0x4 0x0 0xe8080000 0x00080000>; 234*ee0a3f56SAlexandr Smirnov 235*ee0a3f56SAlexandr Smirnov flash@0,0 { 236*ee0a3f56SAlexandr Smirnov #address-cells = <1>; 237*ee0a3f56SAlexandr Smirnov #size-cells = <1>; 238*ee0a3f56SAlexandr Smirnov compatible = "jedec-flash"; 239*ee0a3f56SAlexandr Smirnov reg = <0x0 0x0 0x800000>; 240*ee0a3f56SAlexandr Smirnov bank-width = <0x2>; 241*ee0a3f56SAlexandr Smirnov 242*ee0a3f56SAlexandr Smirnov partition@0 { 243*ee0a3f56SAlexandr Smirnov label = "Primary Kernel"; 244*ee0a3f56SAlexandr Smirnov reg = <0x0 0x180000>; 245*ee0a3f56SAlexandr Smirnov }; 246*ee0a3f56SAlexandr Smirnov partition@180000 { 247*ee0a3f56SAlexandr Smirnov label = "Primary Filesystem"; 248*ee0a3f56SAlexandr Smirnov reg = <0x180000 0x580000>; 249*ee0a3f56SAlexandr Smirnov }; 250*ee0a3f56SAlexandr Smirnov partition@700000 { 251*ee0a3f56SAlexandr Smirnov label = "Monitor"; 252*ee0a3f56SAlexandr Smirnov reg = <0x300000 0x100000>; 253*ee0a3f56SAlexandr Smirnov read-only; 254*ee0a3f56SAlexandr Smirnov }; 255*ee0a3f56SAlexandr Smirnov }; 256*ee0a3f56SAlexandr Smirnov 257*ee0a3f56SAlexandr Smirnov cpld@4,0 { 258*ee0a3f56SAlexandr Smirnov compatible = "emerson,KSI8560-cpld"; 259*ee0a3f56SAlexandr Smirnov reg = <0x4 0x0 0x80000>; 260*ee0a3f56SAlexandr Smirnov }; 261*ee0a3f56SAlexandr Smirnov }; 262*ee0a3f56SAlexandr Smirnov 263*ee0a3f56SAlexandr Smirnov 264*ee0a3f56SAlexandr Smirnov chosen { 265*ee0a3f56SAlexandr Smirnov linux,stdout-path = "/soc/cpm/serial@91a00"; 266*ee0a3f56SAlexandr Smirnov }; 267*ee0a3f56SAlexandr Smirnov}; 268