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