1*cd2bd44eSIlya Yanok/* 2*cd2bd44eSIlya Yanok * mpc8308_p1m Device Tree Source 3*cd2bd44eSIlya Yanok * 4*cd2bd44eSIlya Yanok * Copyright 2010 Ilya Yanok, Emcraft Systems, yanok@emcraft.com 5*cd2bd44eSIlya Yanok * 6*cd2bd44eSIlya Yanok * This program is free software; you can redistribute it and/or modify it 7*cd2bd44eSIlya Yanok * under the terms of the GNU General Public License as published by the 8*cd2bd44eSIlya Yanok * Free Software Foundation; either version 2 of the License, or (at your 9*cd2bd44eSIlya Yanok * option) any later version. 10*cd2bd44eSIlya Yanok */ 11*cd2bd44eSIlya Yanok 12*cd2bd44eSIlya Yanok/dts-v1/; 13*cd2bd44eSIlya Yanok 14*cd2bd44eSIlya Yanok/ { 15*cd2bd44eSIlya Yanok compatible = "denx,mpc8308_p1m"; 16*cd2bd44eSIlya Yanok #address-cells = <1>; 17*cd2bd44eSIlya Yanok #size-cells = <1>; 18*cd2bd44eSIlya Yanok 19*cd2bd44eSIlya Yanok aliases { 20*cd2bd44eSIlya Yanok ethernet0 = &enet0; 21*cd2bd44eSIlya Yanok ethernet1 = &enet1; 22*cd2bd44eSIlya Yanok serial0 = &serial0; 23*cd2bd44eSIlya Yanok serial1 = &serial1; 24*cd2bd44eSIlya Yanok pci0 = &pci0; 25*cd2bd44eSIlya Yanok }; 26*cd2bd44eSIlya Yanok 27*cd2bd44eSIlya Yanok cpus { 28*cd2bd44eSIlya Yanok #address-cells = <1>; 29*cd2bd44eSIlya Yanok #size-cells = <0>; 30*cd2bd44eSIlya Yanok 31*cd2bd44eSIlya Yanok PowerPC,8308@0 { 32*cd2bd44eSIlya Yanok device_type = "cpu"; 33*cd2bd44eSIlya Yanok reg = <0x0>; 34*cd2bd44eSIlya Yanok d-cache-line-size = <32>; 35*cd2bd44eSIlya Yanok i-cache-line-size = <32>; 36*cd2bd44eSIlya Yanok d-cache-size = <16384>; 37*cd2bd44eSIlya Yanok i-cache-size = <16384>; 38*cd2bd44eSIlya Yanok timebase-frequency = <0>; // from bootloader 39*cd2bd44eSIlya Yanok bus-frequency = <0>; // from bootloader 40*cd2bd44eSIlya Yanok clock-frequency = <0>; // from bootloader 41*cd2bd44eSIlya Yanok }; 42*cd2bd44eSIlya Yanok }; 43*cd2bd44eSIlya Yanok 44*cd2bd44eSIlya Yanok memory { 45*cd2bd44eSIlya Yanok device_type = "memory"; 46*cd2bd44eSIlya Yanok reg = <0x00000000 0x08000000>; // 128MB at 0 47*cd2bd44eSIlya Yanok }; 48*cd2bd44eSIlya Yanok 49*cd2bd44eSIlya Yanok localbus@e0005000 { 50*cd2bd44eSIlya Yanok #address-cells = <2>; 51*cd2bd44eSIlya Yanok #size-cells = <1>; 52*cd2bd44eSIlya Yanok compatible = "fsl,mpc8315-elbc", "fsl,elbc", "simple-bus"; 53*cd2bd44eSIlya Yanok reg = <0xe0005000 0x1000>; 54*cd2bd44eSIlya Yanok interrupts = <77 0x8>; 55*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 56*cd2bd44eSIlya Yanok 57*cd2bd44eSIlya Yanok ranges = <0x0 0x0 0xfc000000 0x04000000 58*cd2bd44eSIlya Yanok 0x1 0x0 0xfbff0000 0x00008000 59*cd2bd44eSIlya Yanok 0x2 0x0 0xfbff8000 0x00008000>; 60*cd2bd44eSIlya Yanok 61*cd2bd44eSIlya Yanok flash@0,0 { 62*cd2bd44eSIlya Yanok #address-cells = <1>; 63*cd2bd44eSIlya Yanok #size-cells = <1>; 64*cd2bd44eSIlya Yanok compatible = "cfi-flash"; 65*cd2bd44eSIlya Yanok reg = <0x0 0x0 0x4000000>; 66*cd2bd44eSIlya Yanok bank-width = <2>; 67*cd2bd44eSIlya Yanok device-width = <1>; 68*cd2bd44eSIlya Yanok 69*cd2bd44eSIlya Yanok u-boot@0 { 70*cd2bd44eSIlya Yanok reg = <0x0 0x60000>; 71*cd2bd44eSIlya Yanok read-only; 72*cd2bd44eSIlya Yanok }; 73*cd2bd44eSIlya Yanok env@60000 { 74*cd2bd44eSIlya Yanok reg = <0x60000 0x20000>; 75*cd2bd44eSIlya Yanok }; 76*cd2bd44eSIlya Yanok env1@80000 { 77*cd2bd44eSIlya Yanok reg = <0x80000 0x20000>; 78*cd2bd44eSIlya Yanok }; 79*cd2bd44eSIlya Yanok kernel@a0000 { 80*cd2bd44eSIlya Yanok reg = <0xa0000 0x200000>; 81*cd2bd44eSIlya Yanok }; 82*cd2bd44eSIlya Yanok dtb@2a0000 { 83*cd2bd44eSIlya Yanok reg = <0x2a0000 0x20000>; 84*cd2bd44eSIlya Yanok }; 85*cd2bd44eSIlya Yanok ramdisk@2c0000 { 86*cd2bd44eSIlya Yanok reg = <0x2c0000 0x640000>; 87*cd2bd44eSIlya Yanok }; 88*cd2bd44eSIlya Yanok user@700000 { 89*cd2bd44eSIlya Yanok reg = <0x700000 0x3900000>; 90*cd2bd44eSIlya Yanok }; 91*cd2bd44eSIlya Yanok }; 92*cd2bd44eSIlya Yanok 93*cd2bd44eSIlya Yanok can@1,0 { 94*cd2bd44eSIlya Yanok compatible = "nxp,sja1000"; 95*cd2bd44eSIlya Yanok reg = <0x1 0x0 0x80>; 96*cd2bd44eSIlya Yanok interrupts = <18 0x8>; 97*cd2bd44eSIlya Yanok interrups-parent = <&ipic>; 98*cd2bd44eSIlya Yanok }; 99*cd2bd44eSIlya Yanok 100*cd2bd44eSIlya Yanok cpld@2,0 { 101*cd2bd44eSIlya Yanok compatible = "denx,mpc8308_p1m-cpld"; 102*cd2bd44eSIlya Yanok reg = <0x2 0x0 0x8>; 103*cd2bd44eSIlya Yanok interrupts = <48 0x8>; 104*cd2bd44eSIlya Yanok interrups-parent = <&ipic>; 105*cd2bd44eSIlya Yanok }; 106*cd2bd44eSIlya Yanok }; 107*cd2bd44eSIlya Yanok 108*cd2bd44eSIlya Yanok immr@e0000000 { 109*cd2bd44eSIlya Yanok #address-cells = <1>; 110*cd2bd44eSIlya Yanok #size-cells = <1>; 111*cd2bd44eSIlya Yanok device_type = "soc"; 112*cd2bd44eSIlya Yanok compatible = "fsl,mpc8308-immr", "simple-bus"; 113*cd2bd44eSIlya Yanok ranges = <0 0xe0000000 0x00100000>; 114*cd2bd44eSIlya Yanok reg = <0xe0000000 0x00000200>; 115*cd2bd44eSIlya Yanok bus-frequency = <0>; 116*cd2bd44eSIlya Yanok 117*cd2bd44eSIlya Yanok i2c@3000 { 118*cd2bd44eSIlya Yanok #address-cells = <1>; 119*cd2bd44eSIlya Yanok #size-cells = <0>; 120*cd2bd44eSIlya Yanok compatible = "fsl-i2c"; 121*cd2bd44eSIlya Yanok reg = <0x3000 0x100>; 122*cd2bd44eSIlya Yanok interrupts = <14 0x8>; 123*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 124*cd2bd44eSIlya Yanok dfsrr; 125*cd2bd44eSIlya Yanok fram@50 { 126*cd2bd44eSIlya Yanok compatible = "ramtron,24c64"; 127*cd2bd44eSIlya Yanok reg = <0x50>; 128*cd2bd44eSIlya Yanok }; 129*cd2bd44eSIlya Yanok }; 130*cd2bd44eSIlya Yanok 131*cd2bd44eSIlya Yanok i2c@3100 { 132*cd2bd44eSIlya Yanok #address-cells = <1>; 133*cd2bd44eSIlya Yanok #size-cells = <0>; 134*cd2bd44eSIlya Yanok compatible = "fsl-i2c"; 135*cd2bd44eSIlya Yanok reg = <0x3100 0x100>; 136*cd2bd44eSIlya Yanok interrupts = <15 0x8>; 137*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 138*cd2bd44eSIlya Yanok dfsrr; 139*cd2bd44eSIlya Yanok pwm@28 { 140*cd2bd44eSIlya Yanok compatible = "maxim,ds1050"; 141*cd2bd44eSIlya Yanok reg = <0x28>; 142*cd2bd44eSIlya Yanok }; 143*cd2bd44eSIlya Yanok sensor@48 { 144*cd2bd44eSIlya Yanok compatible = "maxim,max6625"; 145*cd2bd44eSIlya Yanok reg = <0x48>; 146*cd2bd44eSIlya Yanok }; 147*cd2bd44eSIlya Yanok sensor@49 { 148*cd2bd44eSIlya Yanok compatible = "maxim,max6625"; 149*cd2bd44eSIlya Yanok reg = <0x49>; 150*cd2bd44eSIlya Yanok }; 151*cd2bd44eSIlya Yanok sensor@4b { 152*cd2bd44eSIlya Yanok compatible = "maxim,max6625"; 153*cd2bd44eSIlya Yanok reg = <0x4b>; 154*cd2bd44eSIlya Yanok }; 155*cd2bd44eSIlya Yanok }; 156*cd2bd44eSIlya Yanok 157*cd2bd44eSIlya Yanok usb@23000 { 158*cd2bd44eSIlya Yanok compatible = "fsl-usb2-dr"; 159*cd2bd44eSIlya Yanok reg = <0x23000 0x1000>; 160*cd2bd44eSIlya Yanok #address-cells = <1>; 161*cd2bd44eSIlya Yanok #size-cells = <0>; 162*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 163*cd2bd44eSIlya Yanok interrupts = <38 0x8>; 164*cd2bd44eSIlya Yanok dr_mode = "peripheral"; 165*cd2bd44eSIlya Yanok phy_type = "ulpi"; 166*cd2bd44eSIlya Yanok }; 167*cd2bd44eSIlya Yanok 168*cd2bd44eSIlya Yanok enet0: ethernet@24000 { 169*cd2bd44eSIlya Yanok #address-cells = <1>; 170*cd2bd44eSIlya Yanok #size-cells = <1>; 171*cd2bd44eSIlya Yanok ranges = <0x0 0x24000 0x1000>; 172*cd2bd44eSIlya Yanok 173*cd2bd44eSIlya Yanok cell-index = <0>; 174*cd2bd44eSIlya Yanok device_type = "network"; 175*cd2bd44eSIlya Yanok model = "eTSEC"; 176*cd2bd44eSIlya Yanok compatible = "gianfar"; 177*cd2bd44eSIlya Yanok reg = <0x24000 0x1000>; 178*cd2bd44eSIlya Yanok local-mac-address = [ 00 00 00 00 00 00 ]; 179*cd2bd44eSIlya Yanok interrupts = <32 0x8 33 0x8 34 0x8>; 180*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 181*cd2bd44eSIlya Yanok phy-handle = < &phy1 >; 182*cd2bd44eSIlya Yanok 183*cd2bd44eSIlya Yanok mdio@520 { 184*cd2bd44eSIlya Yanok #address-cells = <1>; 185*cd2bd44eSIlya Yanok #size-cells = <0>; 186*cd2bd44eSIlya Yanok compatible = "fsl,gianfar-mdio"; 187*cd2bd44eSIlya Yanok reg = <0x520 0x20>; 188*cd2bd44eSIlya Yanok phy1: ethernet-phy@1 { 189*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 190*cd2bd44eSIlya Yanok interrupts = <17 0x8>; 191*cd2bd44eSIlya Yanok reg = <0x1>; 192*cd2bd44eSIlya Yanok device_type = "ethernet-phy"; 193*cd2bd44eSIlya Yanok }; 194*cd2bd44eSIlya Yanok phy2: ethernet-phy@2 { 195*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 196*cd2bd44eSIlya Yanok interrupts = <19 0x8>; 197*cd2bd44eSIlya Yanok reg = <0x2>; 198*cd2bd44eSIlya Yanok device_type = "ethernet-phy"; 199*cd2bd44eSIlya Yanok }; 200*cd2bd44eSIlya Yanok tbi0: tbi-phy@11 { 201*cd2bd44eSIlya Yanok reg = <0x11>; 202*cd2bd44eSIlya Yanok device_type = "tbi-phy"; 203*cd2bd44eSIlya Yanok }; 204*cd2bd44eSIlya Yanok }; 205*cd2bd44eSIlya Yanok }; 206*cd2bd44eSIlya Yanok 207*cd2bd44eSIlya Yanok enet1: ethernet@25000 { 208*cd2bd44eSIlya Yanok #address-cells = <1>; 209*cd2bd44eSIlya Yanok #size-cells = <1>; 210*cd2bd44eSIlya Yanok cell-index = <1>; 211*cd2bd44eSIlya Yanok device_type = "network"; 212*cd2bd44eSIlya Yanok model = "eTSEC"; 213*cd2bd44eSIlya Yanok compatible = "gianfar"; 214*cd2bd44eSIlya Yanok reg = <0x25000 0x1000>; 215*cd2bd44eSIlya Yanok ranges = <0x0 0x25000 0x1000>; 216*cd2bd44eSIlya Yanok local-mac-address = [ 00 00 00 00 00 00 ]; 217*cd2bd44eSIlya Yanok interrupts = <35 0x8 36 0x8 37 0x8>; 218*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 219*cd2bd44eSIlya Yanok phy-handle = < &phy2 >; 220*cd2bd44eSIlya Yanok 221*cd2bd44eSIlya Yanok mdio@520 { 222*cd2bd44eSIlya Yanok #address-cells = <1>; 223*cd2bd44eSIlya Yanok #size-cells = <0>; 224*cd2bd44eSIlya Yanok compatible = "fsl,gianfar-tbi"; 225*cd2bd44eSIlya Yanok reg = <0x520 0x20>; 226*cd2bd44eSIlya Yanok tbi1: tbi-phy@11 { 227*cd2bd44eSIlya Yanok reg = <0x11>; 228*cd2bd44eSIlya Yanok device_type = "tbi-phy"; 229*cd2bd44eSIlya Yanok }; 230*cd2bd44eSIlya Yanok }; 231*cd2bd44eSIlya Yanok }; 232*cd2bd44eSIlya Yanok 233*cd2bd44eSIlya Yanok serial0: serial@4500 { 234*cd2bd44eSIlya Yanok cell-index = <0>; 235*cd2bd44eSIlya Yanok device_type = "serial"; 236*cd2bd44eSIlya Yanok compatible = "ns16550"; 237*cd2bd44eSIlya Yanok reg = <0x4500 0x100>; 238*cd2bd44eSIlya Yanok clock-frequency = <133333333>; 239*cd2bd44eSIlya Yanok interrupts = <9 0x8>; 240*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 241*cd2bd44eSIlya Yanok }; 242*cd2bd44eSIlya Yanok 243*cd2bd44eSIlya Yanok serial1: serial@4600 { 244*cd2bd44eSIlya Yanok cell-index = <1>; 245*cd2bd44eSIlya Yanok device_type = "serial"; 246*cd2bd44eSIlya Yanok compatible = "ns16550"; 247*cd2bd44eSIlya Yanok reg = <0x4600 0x100>; 248*cd2bd44eSIlya Yanok clock-frequency = <133333333>; 249*cd2bd44eSIlya Yanok interrupts = <10 0x8>; 250*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 251*cd2bd44eSIlya Yanok }; 252*cd2bd44eSIlya Yanok 253*cd2bd44eSIlya Yanok gpio@c00 { 254*cd2bd44eSIlya Yanok #gpio-cells = <2>; 255*cd2bd44eSIlya Yanok compatible = "fsl,mpc8308-gpio", "fsl,mpc8349-gpio"; 256*cd2bd44eSIlya Yanok reg = <0xc00 0x18>; 257*cd2bd44eSIlya Yanok interrupts = <74 0x8>; 258*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 259*cd2bd44eSIlya Yanok gpio-controller; 260*cd2bd44eSIlya Yanok }; 261*cd2bd44eSIlya Yanok 262*cd2bd44eSIlya Yanok timer@500 { 263*cd2bd44eSIlya Yanok compatible = "fsl,mpc8308-gtm", "fsl,gtm"; 264*cd2bd44eSIlya Yanok reg = <0x500 0x100>; 265*cd2bd44eSIlya Yanok interrupts = <90 8 78 8 84 8 72 8>; 266*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 267*cd2bd44eSIlya Yanok clock-frequency = <133333333>; 268*cd2bd44eSIlya Yanok }; 269*cd2bd44eSIlya Yanok 270*cd2bd44eSIlya Yanok /* IPIC 271*cd2bd44eSIlya Yanok * interrupts cell = <intr #, sense> 272*cd2bd44eSIlya Yanok * sense values match linux IORESOURCE_IRQ_* defines: 273*cd2bd44eSIlya Yanok * sense == 8: Level, low assertion 274*cd2bd44eSIlya Yanok * sense == 2: Edge, high-to-low change 275*cd2bd44eSIlya Yanok */ 276*cd2bd44eSIlya Yanok ipic: interrupt-controller@700 { 277*cd2bd44eSIlya Yanok compatible = "fsl,ipic"; 278*cd2bd44eSIlya Yanok interrupt-controller; 279*cd2bd44eSIlya Yanok #address-cells = <0>; 280*cd2bd44eSIlya Yanok #interrupt-cells = <2>; 281*cd2bd44eSIlya Yanok reg = <0x700 0x100>; 282*cd2bd44eSIlya Yanok device_type = "ipic"; 283*cd2bd44eSIlya Yanok }; 284*cd2bd44eSIlya Yanok 285*cd2bd44eSIlya Yanok ipic-msi@7c0 { 286*cd2bd44eSIlya Yanok compatible = "fsl,ipic-msi"; 287*cd2bd44eSIlya Yanok reg = <0x7c0 0x40>; 288*cd2bd44eSIlya Yanok msi-available-ranges = <0x0 0x100>; 289*cd2bd44eSIlya Yanok interrupts = < 0x43 0x8 290*cd2bd44eSIlya Yanok 0x4 0x8 291*cd2bd44eSIlya Yanok 0x51 0x8 292*cd2bd44eSIlya Yanok 0x52 0x8 293*cd2bd44eSIlya Yanok 0x56 0x8 294*cd2bd44eSIlya Yanok 0x57 0x8 295*cd2bd44eSIlya Yanok 0x58 0x8 296*cd2bd44eSIlya Yanok 0x59 0x8 >; 297*cd2bd44eSIlya Yanok interrupt-parent = < &ipic >; 298*cd2bd44eSIlya Yanok }; 299*cd2bd44eSIlya Yanok 300*cd2bd44eSIlya Yanok }; 301*cd2bd44eSIlya Yanok 302*cd2bd44eSIlya Yanok pci0: pcie@e0009000 { 303*cd2bd44eSIlya Yanok #address-cells = <3>; 304*cd2bd44eSIlya Yanok #size-cells = <2>; 305*cd2bd44eSIlya Yanok #interrupt-cells = <1>; 306*cd2bd44eSIlya Yanok device_type = "pci"; 307*cd2bd44eSIlya Yanok compatible = "fsl,mpc8308-pcie", "fsl,mpc8314-pcie"; 308*cd2bd44eSIlya Yanok reg = <0xe0009000 0x00001000 309*cd2bd44eSIlya Yanok 0xb0000000 0x01000000>; 310*cd2bd44eSIlya Yanok ranges = <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000 311*cd2bd44eSIlya Yanok 0x01000000 0 0x00000000 0xb1000000 0 0x00800000>; 312*cd2bd44eSIlya Yanok bus-range = <0 0>; 313*cd2bd44eSIlya Yanok interrupt-map-mask = <0 0 0 0>; 314*cd2bd44eSIlya Yanok interrupt-map = <0 0 0 0 &ipic 1 8>; 315*cd2bd44eSIlya Yanok interrupts = <0x1 0x8>; 316*cd2bd44eSIlya Yanok interrupt-parent = <&ipic>; 317*cd2bd44eSIlya Yanok clock-frequency = <0>; 318*cd2bd44eSIlya Yanok 319*cd2bd44eSIlya Yanok pcie@0 { 320*cd2bd44eSIlya Yanok #address-cells = <3>; 321*cd2bd44eSIlya Yanok #size-cells = <2>; 322*cd2bd44eSIlya Yanok device_type = "pci"; 323*cd2bd44eSIlya Yanok reg = <0 0 0 0 0>; 324*cd2bd44eSIlya Yanok ranges = <0x02000000 0 0xa0000000 325*cd2bd44eSIlya Yanok 0x02000000 0 0xa0000000 326*cd2bd44eSIlya Yanok 0 0x10000000 327*cd2bd44eSIlya Yanok 0x01000000 0 0x00000000 328*cd2bd44eSIlya Yanok 0x01000000 0 0x00000000 329*cd2bd44eSIlya Yanok 0 0x00800000>; 330*cd2bd44eSIlya Yanok }; 331*cd2bd44eSIlya Yanok }; 332*cd2bd44eSIlya Yanok}; 333