1/* 2 * Device Tree Source for AMCC Sequoia 3 * 4 * Based on Bamboo code by Josh Boyer <jwboyer@linux.vnet.ibm.com> 5 * Copyright (c) 2006, 2007 IBM Corp. 6 * 7 * FIXME: Draft only! 8 * 9 * This file is licensed under the terms of the GNU General Public 10 * License version 2. This program is licensed "as is" without 11 * any warranty of any kind, whether express or implied. 12 * 13 */ 14 15/ { 16 #address-cells = <2>; 17 #size-cells = <1>; 18 model = "amcc,sequoia"; 19 compatible = "amcc,sequoia"; 20 dcr-parent = <&/cpus/PowerPC,440EPx@0>; 21 22 cpus { 23 #address-cells = <1>; 24 #size-cells = <0>; 25 26 PowerPC,440EPx@0 { 27 device_type = "cpu"; 28 reg = <0>; 29 clock-frequency = <0>; /* Filled in by zImage */ 30 timebase-frequency = <0>; /* Filled in by zImage */ 31 i-cache-line-size = <20>; 32 d-cache-line-size = <20>; 33 i-cache-size = <8000>; 34 d-cache-size = <8000>; 35 dcr-controller; 36 dcr-access-method = "native"; 37 }; 38 }; 39 40 memory { 41 device_type = "memory"; 42 reg = <0 0 0>; /* Filled in by zImage */ 43 }; 44 45 UIC0: interrupt-controller0 { 46 compatible = "ibm,uic-440epx","ibm,uic"; 47 interrupt-controller; 48 cell-index = <0>; 49 dcr-reg = <0c0 009>; 50 #address-cells = <0>; 51 #size-cells = <0>; 52 #interrupt-cells = <2>; 53 }; 54 55 UIC1: interrupt-controller1 { 56 compatible = "ibm,uic-440epx","ibm,uic"; 57 interrupt-controller; 58 cell-index = <1>; 59 dcr-reg = <0d0 009>; 60 #address-cells = <0>; 61 #size-cells = <0>; 62 #interrupt-cells = <2>; 63 interrupts = <1e 4 1f 4>; /* cascade */ 64 interrupt-parent = <&UIC0>; 65 }; 66 67 UIC2: interrupt-controller2 { 68 compatible = "ibm,uic-440epx","ibm,uic"; 69 interrupt-controller; 70 cell-index = <2>; 71 dcr-reg = <0e0 009>; 72 #address-cells = <0>; 73 #size-cells = <0>; 74 #interrupt-cells = <2>; 75 interrupts = <1c 4 1d 4>; /* cascade */ 76 interrupt-parent = <&UIC0>; 77 }; 78 79 SDR0: sdr { 80 compatible = "ibm,sdr-440epx", "ibm,sdr-440ep"; 81 dcr-reg = <00e 002>; 82 }; 83 84 CPR0: cpr { 85 compatible = "ibm,cpr-440epx", "ibm,cpr-440ep"; 86 dcr-reg = <00c 002>; 87 }; 88 89 plb { 90 compatible = "ibm,plb-440epx", "ibm,plb4"; 91 #address-cells = <2>; 92 #size-cells = <1>; 93 ranges; 94 clock-frequency = <0>; /* Filled in by zImage */ 95 96 SDRAM0: sdram { 97 device_type = "memory-controller"; 98 compatible = "ibm,sdram-440epx", "ibm,sdram-44x-ddr2denali"; 99 dcr-reg = <010 2>; 100 }; 101 102 DMA0: dma { 103 compatible = "ibm,dma-440epx", "ibm,dma-4xx"; 104 dcr-reg = <100 027>; 105 }; 106 107 MAL0: mcmal { 108 compatible = "ibm,mcmal-440epx", "ibm,mcmal2"; 109 dcr-reg = <180 62>; 110 num-tx-chans = <2>; 111 num-rx-chans = <2>; 112 interrupt-parent = <&MAL0>; 113 interrupts = <0 1 2 3 4>; 114 #interrupt-cells = <1>; 115 #address-cells = <0>; 116 #size-cells = <0>; 117 interrupt-map = </*TXEOB*/ 0 &UIC0 a 4 118 /*RXEOB*/ 1 &UIC0 b 4 119 /*SERR*/ 2 &UIC1 0 4 120 /*TXDE*/ 3 &UIC1 1 4 121 /*RXDE*/ 4 &UIC1 2 4>; 122 interrupt-map-mask = <ffffffff>; 123 }; 124 125 POB0: opb { 126 compatible = "ibm,opb-440epx", "ibm,opb"; 127 #address-cells = <1>; 128 #size-cells = <1>; 129 ranges = <00000000 1 00000000 80000000 130 80000000 1 80000000 80000000>; 131 interrupt-parent = <&UIC1>; 132 interrupts = <7 4>; 133 clock-frequency = <0>; /* Filled in by zImage */ 134 135 EBC0: ebc { 136 compatible = "ibm,ebc-440epx", "ibm,ebc"; 137 dcr-reg = <012 2>; 138 #address-cells = <2>; 139 #size-cells = <1>; 140 clock-frequency = <0>; /* Filled in by zImage */ 141 interrupts = <5 1>; 142 interrupt-parent = <&UIC1>; 143 144 nor_flash@0,0 { 145 compatible = "amd,s29gl256n", "cfi-flash"; 146 bank-width = <2>; 147 reg = <0 000000 4000000>; 148 #address-cells = <1>; 149 #size-cells = <1>; 150 partition@0 { 151 label = "Kernel"; 152 reg = <0 180000>; 153 }; 154 partition@180000 { 155 label = "ramdisk"; 156 reg = <180000 200000>; 157 }; 158 partition@380000 { 159 label = "file system"; 160 reg = <380000 3aa0000>; 161 }; 162 partition@3e20000 { 163 label = "kozio"; 164 reg = <3e20000 140000>; 165 }; 166 partition@3f60000 { 167 label = "env"; 168 reg = <3f60000 40000>; 169 }; 170 partition@3fa0000 { 171 label = "u-boot"; 172 reg = <3fa0000 60000>; 173 }; 174 }; 175 176 }; 177 178 UART0: serial@ef600300 { 179 device_type = "serial"; 180 compatible = "ns16550"; 181 reg = <ef600300 8>; 182 virtual-reg = <ef600300>; 183 clock-frequency = <0>; /* Filled in by zImage */ 184 current-speed = <1c200>; 185 interrupt-parent = <&UIC0>; 186 interrupts = <0 4>; 187 }; 188 189 UART1: serial@ef600400 { 190 device_type = "serial"; 191 compatible = "ns16550"; 192 reg = <ef600400 8>; 193 virtual-reg = <ef600400>; 194 clock-frequency = <0>; 195 current-speed = <0>; 196 interrupt-parent = <&UIC0>; 197 interrupts = <1 4>; 198 }; 199 200 UART2: serial@ef600500 { 201 device_type = "serial"; 202 compatible = "ns16550"; 203 reg = <ef600500 8>; 204 virtual-reg = <ef600500>; 205 clock-frequency = <0>; 206 current-speed = <0>; 207 interrupt-parent = <&UIC1>; 208 interrupts = <3 4>; 209 }; 210 211 UART3: serial@ef600600 { 212 device_type = "serial"; 213 compatible = "ns16550"; 214 reg = <ef600600 8>; 215 virtual-reg = <ef600600>; 216 clock-frequency = <0>; 217 current-speed = <0>; 218 interrupt-parent = <&UIC1>; 219 interrupts = <4 4>; 220 }; 221 222 IIC0: i2c@ef600700 { 223 device_type = "i2c"; 224 compatible = "ibm,iic-440epx", "ibm,iic"; 225 reg = <ef600700 14>; 226 interrupt-parent = <&UIC0>; 227 interrupts = <2 4>; 228 }; 229 230 IIC1: i2c@ef600800 { 231 device_type = "i2c"; 232 compatible = "ibm,iic-440epx", "ibm,iic"; 233 reg = <ef600800 14>; 234 interrupt-parent = <&UIC0>; 235 interrupts = <7 4>; 236 }; 237 238 ZMII0: emac-zmii@ef600d00 { 239 device_type = "zmii-interface"; 240 compatible = "ibm,zmii-440epx", "ibm,zmii"; 241 reg = <ef600d00 c>; 242 }; 243 244 EMAC0: ethernet@ef600e00 { 245 linux,network-index = <0>; 246 device_type = "network"; 247 compatible = "ibm,emac-440epx", "ibm,emac4"; 248 interrupt-parent = <&EMAC0>; 249 interrupts = <0 1>; 250 #interrupt-cells = <1>; 251 #address-cells = <0>; 252 #size-cells = <0>; 253 interrupt-map = </*Status*/ 0 &UIC0 18 4 254 /*Wake*/ 1 &UIC1 1d 4>; 255 reg = <ef600e00 70>; 256 local-mac-address = [000000000000]; 257 mal-device = <&MAL0>; 258 mal-tx-channel = <0>; 259 mal-rx-channel = <0>; 260 cell-index = <0>; 261 max-frame-size = <5dc>; 262 rx-fifo-size = <1000>; 263 tx-fifo-size = <800>; 264 phy-mode = "rmii"; 265 phy-map = <00000000>; 266 zmii-device = <&ZMII0>; 267 zmii-channel = <0>; 268 }; 269 270 EMAC1: ethernet@ef600f00 { 271 linux,network-index = <1>; 272 device_type = "network"; 273 compatible = "ibm,emac-440epx", "ibm,emac4"; 274 interrupt-parent = <&EMAC1>; 275 interrupts = <0 1>; 276 #interrupt-cells = <1>; 277 #address-cells = <0>; 278 #size-cells = <0>; 279 interrupt-map = </*Status*/ 0 &UIC0 19 4 280 /*Wake*/ 1 &UIC1 1f 4>; 281 reg = <ef600f00 70>; 282 local-mac-address = [000000000000]; 283 mal-device = <&MAL0>; 284 mal-tx-channel = <1>; 285 mal-rx-channel = <1>; 286 cell-index = <1>; 287 max-frame-size = <5dc>; 288 rx-fifo-size = <1000>; 289 tx-fifo-size = <800>; 290 phy-mode = "rmii"; 291 phy-map = <00000000>; 292 zmii-device = <&ZMII0>; 293 zmii-channel = <1>; 294 }; 295 }; 296 }; 297 298 chosen { 299 linux,stdout-path = "/plb/opb/serial@ef600300"; 300 bootargs = "console=ttyS0,115200"; 301 }; 302}; 303