1*317bf653SNate Case/* 2*317bf653SNate Case * Copyright (C) 2008 Extreme Engineering Solutions, Inc. 3*317bf653SNate Case * Based on MPC8572DS device tree from Freescale Semiconductor, Inc. 4*317bf653SNate Case * 5*317bf653SNate Case * XPedite5330 3U CompactPCI module based on MPC8572E 6*317bf653SNate Case * 7*317bf653SNate Case * This is free software; you can redistribute it and/or modify 8*317bf653SNate Case * it under the terms of the GNU General Public License version 2 as 9*317bf653SNate Case * published by the Free Software Foundation. 10*317bf653SNate Case */ 11*317bf653SNate Case 12*317bf653SNate Case/dts-v1/; 13*317bf653SNate Case/ { 14*317bf653SNate Case model = "xes,xpedite5330"; 15*317bf653SNate Case compatible = "xes,xpedite5330", "xes,MPC8572"; 16*317bf653SNate Case #address-cells = <2>; 17*317bf653SNate Case #size-cells = <2>; 18*317bf653SNate Case form-factor = "3U CompactPCI"; 19*317bf653SNate Case boot-bank = <0x0>; /* 0: Primary flash, 1: Secondary flash */ 20*317bf653SNate Case 21*317bf653SNate Case aliases { 22*317bf653SNate Case ethernet0 = &enet0; 23*317bf653SNate Case ethernet1 = &enet1; 24*317bf653SNate Case serial0 = &serial0; 25*317bf653SNate Case serial1 = &serial1; 26*317bf653SNate Case pci0 = &pci0; 27*317bf653SNate Case pci1 = &pci1; 28*317bf653SNate Case pci2 = &pci2; 29*317bf653SNate Case }; 30*317bf653SNate Case 31*317bf653SNate Case pmcslots { 32*317bf653SNate Case #address-cells = <1>; 33*317bf653SNate Case #size-cells = <0>; 34*317bf653SNate Case 35*317bf653SNate Case pmcslot@0 { 36*317bf653SNate Case cell-index = <0>; 37*317bf653SNate Case /* 38*317bf653SNate Case * boolean properties (true if defined): 39*317bf653SNate Case * monarch; 40*317bf653SNate Case * module-present; 41*317bf653SNate Case */ 42*317bf653SNate Case }; 43*317bf653SNate Case }; 44*317bf653SNate Case 45*317bf653SNate Case xmcslots { 46*317bf653SNate Case #address-cells = <1>; 47*317bf653SNate Case #size-cells = <0>; 48*317bf653SNate Case 49*317bf653SNate Case xmcslot@0 { 50*317bf653SNate Case cell-index = <0>; 51*317bf653SNate Case /* 52*317bf653SNate Case * boolean properties (true if defined): 53*317bf653SNate Case * module-present; 54*317bf653SNate Case */ 55*317bf653SNate Case }; 56*317bf653SNate Case }; 57*317bf653SNate Case 58*317bf653SNate Case cpci { 59*317bf653SNate Case /* 60*317bf653SNate Case * boolean properties (true if defined): 61*317bf653SNate Case * system-controller; 62*317bf653SNate Case */ 63*317bf653SNate Case system-controller; 64*317bf653SNate Case }; 65*317bf653SNate Case 66*317bf653SNate Case cpus { 67*317bf653SNate Case #address-cells = <1>; 68*317bf653SNate Case #size-cells = <0>; 69*317bf653SNate Case 70*317bf653SNate Case PowerPC,8572@0 { 71*317bf653SNate Case device_type = "cpu"; 72*317bf653SNate Case reg = <0x0>; 73*317bf653SNate Case d-cache-line-size = <32>; // 32 bytes 74*317bf653SNate Case i-cache-line-size = <32>; // 32 bytes 75*317bf653SNate Case d-cache-size = <0x8000>; // L1, 32K 76*317bf653SNate Case i-cache-size = <0x8000>; // L1, 32K 77*317bf653SNate Case timebase-frequency = <0>; 78*317bf653SNate Case bus-frequency = <0>; 79*317bf653SNate Case clock-frequency = <0>; 80*317bf653SNate Case next-level-cache = <&L2>; 81*317bf653SNate Case }; 82*317bf653SNate Case 83*317bf653SNate Case PowerPC,8572@1 { 84*317bf653SNate Case device_type = "cpu"; 85*317bf653SNate Case reg = <0x1>; 86*317bf653SNate Case d-cache-line-size = <32>; // 32 bytes 87*317bf653SNate Case i-cache-line-size = <32>; // 32 bytes 88*317bf653SNate Case d-cache-size = <0x8000>; // L1, 32K 89*317bf653SNate Case i-cache-size = <0x8000>; // L1, 32K 90*317bf653SNate Case timebase-frequency = <0>; 91*317bf653SNate Case bus-frequency = <0>; 92*317bf653SNate Case clock-frequency = <0>; 93*317bf653SNate Case next-level-cache = <&L2>; 94*317bf653SNate Case }; 95*317bf653SNate Case }; 96*317bf653SNate Case 97*317bf653SNate Case memory { 98*317bf653SNate Case device_type = "memory"; 99*317bf653SNate Case reg = <0x0 0x0 0x0 0x0>; // Filled in by U-Boot 100*317bf653SNate Case }; 101*317bf653SNate Case 102*317bf653SNate Case localbus@ef005000 { 103*317bf653SNate Case #address-cells = <2>; 104*317bf653SNate Case #size-cells = <1>; 105*317bf653SNate Case compatible = "fsl,mpc8572-elbc", "fsl,elbc", "simple-bus"; 106*317bf653SNate Case reg = <0 0xef005000 0 0x1000>; 107*317bf653SNate Case interrupts = <19 2>; 108*317bf653SNate Case interrupt-parent = <&mpic>; 109*317bf653SNate Case /* Local bus region mappings */ 110*317bf653SNate Case ranges = <0 0 0 0xf8000000 0x8000000 /* CS0: Boot flash */ 111*317bf653SNate Case 1 0 0 0xf0000000 0x8000000 /* CS1: Alternate flash */ 112*317bf653SNate Case 2 0 0 0xef800000 0x40000 /* CS2: NAND CE1 */ 113*317bf653SNate Case 3 0 0 0xef840000 0x40000>; /* CS3: NAND CE2 */ 114*317bf653SNate Case 115*317bf653SNate Case nor-boot@0,0 { 116*317bf653SNate Case compatible = "amd,s29gl01gp", "cfi-flash"; 117*317bf653SNate Case bank-width = <2>; 118*317bf653SNate Case reg = <0 0 0x8000000>; /* 128MB */ 119*317bf653SNate Case #address-cells = <1>; 120*317bf653SNate Case #size-cells = <1>; 121*317bf653SNate Case partition@0 { 122*317bf653SNate Case label = "Primary user space"; 123*317bf653SNate Case reg = <0x00000000 0x6f00000>; /* 111 MB */ 124*317bf653SNate Case }; 125*317bf653SNate Case partition@6f00000 { 126*317bf653SNate Case label = "Primary kernel"; 127*317bf653SNate Case reg = <0x6f00000 0x1000000>; /* 16 MB */ 128*317bf653SNate Case }; 129*317bf653SNate Case partition@7f00000 { 130*317bf653SNate Case label = "Primary DTB"; 131*317bf653SNate Case reg = <0x7f00000 0x40000>; /* 256 KB */ 132*317bf653SNate Case }; 133*317bf653SNate Case partition@7f40000 { 134*317bf653SNate Case label = "Primary U-Boot environment"; 135*317bf653SNate Case reg = <0x7f40000 0x40000>; /* 256 KB */ 136*317bf653SNate Case }; 137*317bf653SNate Case partition@7f80000 { 138*317bf653SNate Case label = "Primary U-Boot"; 139*317bf653SNate Case reg = <0x7f80000 0x80000>; /* 512 KB */ 140*317bf653SNate Case read-only; 141*317bf653SNate Case }; 142*317bf653SNate Case }; 143*317bf653SNate Case 144*317bf653SNate Case nor-alternate@1,0 { 145*317bf653SNate Case compatible = "amd,s29gl01gp", "cfi-flash"; 146*317bf653SNate Case bank-width = <2>; 147*317bf653SNate Case //reg = <0xf0000000 0x08000000>; /* 128MB */ 148*317bf653SNate Case reg = <1 0 0x8000000>; /* 128MB */ 149*317bf653SNate Case #address-cells = <1>; 150*317bf653SNate Case #size-cells = <1>; 151*317bf653SNate Case partition@0 { 152*317bf653SNate Case label = "Secondary user space"; 153*317bf653SNate Case reg = <0x00000000 0x6f00000>; /* 111 MB */ 154*317bf653SNate Case }; 155*317bf653SNate Case partition@6f00000 { 156*317bf653SNate Case label = "Secondary kernel"; 157*317bf653SNate Case reg = <0x6f00000 0x1000000>; /* 16 MB */ 158*317bf653SNate Case }; 159*317bf653SNate Case partition@7f00000 { 160*317bf653SNate Case label = "Secondary DTB"; 161*317bf653SNate Case reg = <0x7f00000 0x40000>; /* 256 KB */ 162*317bf653SNate Case }; 163*317bf653SNate Case partition@7f40000 { 164*317bf653SNate Case label = "Secondary U-Boot environment"; 165*317bf653SNate Case reg = <0x7f40000 0x40000>; /* 256 KB */ 166*317bf653SNate Case }; 167*317bf653SNate Case partition@7f80000 { 168*317bf653SNate Case label = "Secondary U-Boot"; 169*317bf653SNate Case reg = <0x7f80000 0x80000>; /* 512 KB */ 170*317bf653SNate Case read-only; 171*317bf653SNate Case }; 172*317bf653SNate Case }; 173*317bf653SNate Case 174*317bf653SNate Case nand@2,0 { 175*317bf653SNate Case #address-cells = <1>; 176*317bf653SNate Case #size-cells = <1>; 177*317bf653SNate Case /* 178*317bf653SNate Case * Actual part could be ST Micro NAND08GW3B2A (1 GB), 179*317bf653SNate Case * Micron MT29F8G08DAA (2x 512 MB), or Micron 180*317bf653SNate Case * MT29F16G08FAA (2x 1 GB), depending on the build 181*317bf653SNate Case * configuration 182*317bf653SNate Case */ 183*317bf653SNate Case compatible = "fsl,mpc8572-fcm-nand", 184*317bf653SNate Case "fsl,elbc-fcm-nand"; 185*317bf653SNate Case reg = <2 0 0x40000>; 186*317bf653SNate Case /* U-Boot should fix this up if chip size > 1 GB */ 187*317bf653SNate Case partition@0 { 188*317bf653SNate Case label = "NAND Filesystem"; 189*317bf653SNate Case reg = <0 0x40000000>; 190*317bf653SNate Case }; 191*317bf653SNate Case }; 192*317bf653SNate Case 193*317bf653SNate Case }; 194*317bf653SNate Case 195*317bf653SNate Case soc8572@ef000000 { 196*317bf653SNate Case #address-cells = <1>; 197*317bf653SNate Case #size-cells = <1>; 198*317bf653SNate Case device_type = "soc"; 199*317bf653SNate Case compatible = "fsl,mpc8572-immr", "simple-bus"; 200*317bf653SNate Case ranges = <0x0 0 0xef000000 0x100000>; 201*317bf653SNate Case bus-frequency = <0>; // Filled out by uboot. 202*317bf653SNate Case 203*317bf653SNate Case ecm-law@0 { 204*317bf653SNate Case compatible = "fsl,ecm-law"; 205*317bf653SNate Case reg = <0x0 0x1000>; 206*317bf653SNate Case fsl,num-laws = <12>; 207*317bf653SNate Case }; 208*317bf653SNate Case 209*317bf653SNate Case ecm@1000 { 210*317bf653SNate Case compatible = "fsl,mpc8572-ecm", "fsl,ecm"; 211*317bf653SNate Case reg = <0x1000 0x1000>; 212*317bf653SNate Case interrupts = <17 2>; 213*317bf653SNate Case interrupt-parent = <&mpic>; 214*317bf653SNate Case }; 215*317bf653SNate Case 216*317bf653SNate Case memory-controller@2000 { 217*317bf653SNate Case compatible = "fsl,mpc8572-memory-controller"; 218*317bf653SNate Case reg = <0x2000 0x1000>; 219*317bf653SNate Case interrupt-parent = <&mpic>; 220*317bf653SNate Case interrupts = <18 2>; 221*317bf653SNate Case }; 222*317bf653SNate Case 223*317bf653SNate Case memory-controller@6000 { 224*317bf653SNate Case compatible = "fsl,mpc8572-memory-controller"; 225*317bf653SNate Case reg = <0x6000 0x1000>; 226*317bf653SNate Case interrupt-parent = <&mpic>; 227*317bf653SNate Case interrupts = <18 2>; 228*317bf653SNate Case }; 229*317bf653SNate Case 230*317bf653SNate Case L2: l2-cache-controller@20000 { 231*317bf653SNate Case compatible = "fsl,mpc8572-l2-cache-controller"; 232*317bf653SNate Case reg = <0x20000 0x1000>; 233*317bf653SNate Case cache-line-size = <32>; // 32 bytes 234*317bf653SNate Case cache-size = <0x100000>; // L2, 1M 235*317bf653SNate Case interrupt-parent = <&mpic>; 236*317bf653SNate Case interrupts = <16 2>; 237*317bf653SNate Case }; 238*317bf653SNate Case 239*317bf653SNate Case i2c@3000 { 240*317bf653SNate Case #address-cells = <1>; 241*317bf653SNate Case #size-cells = <0>; 242*317bf653SNate Case cell-index = <0>; 243*317bf653SNate Case compatible = "fsl-i2c"; 244*317bf653SNate Case reg = <0x3000 0x100>; 245*317bf653SNate Case interrupts = <43 2>; 246*317bf653SNate Case interrupt-parent = <&mpic>; 247*317bf653SNate Case dfsrr; 248*317bf653SNate Case 249*317bf653SNate Case temp-sensor@48 { 250*317bf653SNate Case compatible = "dallas,ds1631", "dallas,ds1621"; 251*317bf653SNate Case reg = <0x48>; 252*317bf653SNate Case }; 253*317bf653SNate Case 254*317bf653SNate Case temp-sensor@4c { 255*317bf653SNate Case compatible = "adi,adt7461"; 256*317bf653SNate Case reg = <0x4c>; 257*317bf653SNate Case }; 258*317bf653SNate Case 259*317bf653SNate Case cpu-supervisor@51 { 260*317bf653SNate Case compatible = "dallas,ds4510"; 261*317bf653SNate Case reg = <0x51>; 262*317bf653SNate Case }; 263*317bf653SNate Case 264*317bf653SNate Case eeprom@54 { 265*317bf653SNate Case compatible = "atmel,at24c128b"; 266*317bf653SNate Case reg = <0x54>; 267*317bf653SNate Case }; 268*317bf653SNate Case 269*317bf653SNate Case rtc@68 { 270*317bf653SNate Case compatible = "stm,m41t00", 271*317bf653SNate Case "dallas,ds1338"; 272*317bf653SNate Case reg = <0x68>; 273*317bf653SNate Case }; 274*317bf653SNate Case 275*317bf653SNate Case pcie-switch@70 { 276*317bf653SNate Case compatible = "plx,pex8518"; 277*317bf653SNate Case reg = <0x70>; 278*317bf653SNate Case }; 279*317bf653SNate Case 280*317bf653SNate Case gpio1: gpio@18 { 281*317bf653SNate Case compatible = "nxp,pca9557"; 282*317bf653SNate Case reg = <0x18>; 283*317bf653SNate Case #gpio-cells = <2>; 284*317bf653SNate Case gpio-controller; 285*317bf653SNate Case polarity = <0x00>; 286*317bf653SNate Case }; 287*317bf653SNate Case 288*317bf653SNate Case gpio2: gpio@1c { 289*317bf653SNate Case compatible = "nxp,pca9557"; 290*317bf653SNate Case reg = <0x1c>; 291*317bf653SNate Case #gpio-cells = <2>; 292*317bf653SNate Case gpio-controller; 293*317bf653SNate Case polarity = <0x00>; 294*317bf653SNate Case }; 295*317bf653SNate Case 296*317bf653SNate Case gpio3: gpio@1e { 297*317bf653SNate Case compatible = "nxp,pca9557"; 298*317bf653SNate Case reg = <0x1e>; 299*317bf653SNate Case #gpio-cells = <2>; 300*317bf653SNate Case gpio-controller; 301*317bf653SNate Case polarity = <0x00>; 302*317bf653SNate Case }; 303*317bf653SNate Case 304*317bf653SNate Case gpio4: gpio@1f { 305*317bf653SNate Case compatible = "nxp,pca9557"; 306*317bf653SNate Case reg = <0x1f>; 307*317bf653SNate Case #gpio-cells = <2>; 308*317bf653SNate Case gpio-controller; 309*317bf653SNate Case polarity = <0x00>; 310*317bf653SNate Case }; 311*317bf653SNate Case }; 312*317bf653SNate Case 313*317bf653SNate Case i2c@3100 { 314*317bf653SNate Case #address-cells = <1>; 315*317bf653SNate Case #size-cells = <0>; 316*317bf653SNate Case cell-index = <1>; 317*317bf653SNate Case compatible = "fsl-i2c"; 318*317bf653SNate Case reg = <0x3100 0x100>; 319*317bf653SNate Case interrupts = <43 2>; 320*317bf653SNate Case interrupt-parent = <&mpic>; 321*317bf653SNate Case dfsrr; 322*317bf653SNate Case }; 323*317bf653SNate Case 324*317bf653SNate Case dma@c300 { 325*317bf653SNate Case #address-cells = <1>; 326*317bf653SNate Case #size-cells = <1>; 327*317bf653SNate Case compatible = "fsl,mpc8572-dma", "fsl,eloplus-dma"; 328*317bf653SNate Case reg = <0xc300 0x4>; 329*317bf653SNate Case ranges = <0x0 0xc100 0x200>; 330*317bf653SNate Case cell-index = <1>; 331*317bf653SNate Case dma-channel@0 { 332*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 333*317bf653SNate Case "fsl,eloplus-dma-channel"; 334*317bf653SNate Case reg = <0x0 0x80>; 335*317bf653SNate Case cell-index = <0>; 336*317bf653SNate Case interrupt-parent = <&mpic>; 337*317bf653SNate Case interrupts = <76 2>; 338*317bf653SNate Case }; 339*317bf653SNate Case dma-channel@80 { 340*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 341*317bf653SNate Case "fsl,eloplus-dma-channel"; 342*317bf653SNate Case reg = <0x80 0x80>; 343*317bf653SNate Case cell-index = <1>; 344*317bf653SNate Case interrupt-parent = <&mpic>; 345*317bf653SNate Case interrupts = <77 2>; 346*317bf653SNate Case }; 347*317bf653SNate Case dma-channel@100 { 348*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 349*317bf653SNate Case "fsl,eloplus-dma-channel"; 350*317bf653SNate Case reg = <0x100 0x80>; 351*317bf653SNate Case cell-index = <2>; 352*317bf653SNate Case interrupt-parent = <&mpic>; 353*317bf653SNate Case interrupts = <78 2>; 354*317bf653SNate Case }; 355*317bf653SNate Case dma-channel@180 { 356*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 357*317bf653SNate Case "fsl,eloplus-dma-channel"; 358*317bf653SNate Case reg = <0x180 0x80>; 359*317bf653SNate Case cell-index = <3>; 360*317bf653SNate Case interrupt-parent = <&mpic>; 361*317bf653SNate Case interrupts = <79 2>; 362*317bf653SNate Case }; 363*317bf653SNate Case }; 364*317bf653SNate Case 365*317bf653SNate Case dma@21300 { 366*317bf653SNate Case #address-cells = <1>; 367*317bf653SNate Case #size-cells = <1>; 368*317bf653SNate Case compatible = "fsl,mpc8572-dma", "fsl,eloplus-dma"; 369*317bf653SNate Case reg = <0x21300 0x4>; 370*317bf653SNate Case ranges = <0x0 0x21100 0x200>; 371*317bf653SNate Case cell-index = <0>; 372*317bf653SNate Case dma-channel@0 { 373*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 374*317bf653SNate Case "fsl,eloplus-dma-channel"; 375*317bf653SNate Case reg = <0x0 0x80>; 376*317bf653SNate Case cell-index = <0>; 377*317bf653SNate Case interrupt-parent = <&mpic>; 378*317bf653SNate Case interrupts = <20 2>; 379*317bf653SNate Case }; 380*317bf653SNate Case dma-channel@80 { 381*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 382*317bf653SNate Case "fsl,eloplus-dma-channel"; 383*317bf653SNate Case reg = <0x80 0x80>; 384*317bf653SNate Case cell-index = <1>; 385*317bf653SNate Case interrupt-parent = <&mpic>; 386*317bf653SNate Case interrupts = <21 2>; 387*317bf653SNate Case }; 388*317bf653SNate Case dma-channel@100 { 389*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 390*317bf653SNate Case "fsl,eloplus-dma-channel"; 391*317bf653SNate Case reg = <0x100 0x80>; 392*317bf653SNate Case cell-index = <2>; 393*317bf653SNate Case interrupt-parent = <&mpic>; 394*317bf653SNate Case interrupts = <22 2>; 395*317bf653SNate Case }; 396*317bf653SNate Case dma-channel@180 { 397*317bf653SNate Case compatible = "fsl,mpc8572-dma-channel", 398*317bf653SNate Case "fsl,eloplus-dma-channel"; 399*317bf653SNate Case reg = <0x180 0x80>; 400*317bf653SNate Case cell-index = <3>; 401*317bf653SNate Case interrupt-parent = <&mpic>; 402*317bf653SNate Case interrupts = <23 2>; 403*317bf653SNate Case }; 404*317bf653SNate Case }; 405*317bf653SNate Case 406*317bf653SNate Case /* eTSEC 1 */ 407*317bf653SNate Case enet0: ethernet@24000 { 408*317bf653SNate Case #address-cells = <1>; 409*317bf653SNate Case #size-cells = <1>; 410*317bf653SNate Case cell-index = <0>; 411*317bf653SNate Case device_type = "network"; 412*317bf653SNate Case model = "eTSEC"; 413*317bf653SNate Case compatible = "gianfar"; 414*317bf653SNate Case reg = <0x24000 0x1000>; 415*317bf653SNate Case ranges = <0x0 0x24000 0x1000>; 416*317bf653SNate Case local-mac-address = [ 00 00 00 00 00 00 ]; 417*317bf653SNate Case interrupts = <29 2 30 2 34 2>; 418*317bf653SNate Case interrupt-parent = <&mpic>; 419*317bf653SNate Case tbi-handle = <&tbi0>; 420*317bf653SNate Case phy-handle = <&phy0>; 421*317bf653SNate Case phy-connection-type = "sgmii"; 422*317bf653SNate Case 423*317bf653SNate Case mdio@520 { 424*317bf653SNate Case #address-cells = <1>; 425*317bf653SNate Case #size-cells = <0>; 426*317bf653SNate Case compatible = "fsl,gianfar-mdio"; 427*317bf653SNate Case reg = <0x520 0x20>; 428*317bf653SNate Case 429*317bf653SNate Case phy0: ethernet-phy@1 { 430*317bf653SNate Case interrupt-parent = <&mpic>; 431*317bf653SNate Case interrupts = <8 1>; 432*317bf653SNate Case reg = <0x1>; 433*317bf653SNate Case }; 434*317bf653SNate Case phy1: ethernet-phy@2 { 435*317bf653SNate Case interrupt-parent = <&mpic>; 436*317bf653SNate Case interrupts = <8 1>; 437*317bf653SNate Case reg = <0x2>; 438*317bf653SNate Case }; 439*317bf653SNate Case tbi0: tbi-phy@11 { 440*317bf653SNate Case reg = <0x11>; 441*317bf653SNate Case device_type = "tbi-phy"; 442*317bf653SNate Case }; 443*317bf653SNate Case }; 444*317bf653SNate Case }; 445*317bf653SNate Case 446*317bf653SNate Case /* eTSEC 2 */ 447*317bf653SNate Case enet1: ethernet@25000 { 448*317bf653SNate Case #address-cells = <1>; 449*317bf653SNate Case #size-cells = <1>; 450*317bf653SNate Case cell-index = <1>; 451*317bf653SNate Case device_type = "network"; 452*317bf653SNate Case model = "eTSEC"; 453*317bf653SNate Case compatible = "gianfar"; 454*317bf653SNate Case reg = <0x25000 0x1000>; 455*317bf653SNate Case ranges = <0x0 0x25000 0x1000>; 456*317bf653SNate Case local-mac-address = [ 00 00 00 00 00 00 ]; 457*317bf653SNate Case interrupts = <35 2 36 2 40 2>; 458*317bf653SNate Case interrupt-parent = <&mpic>; 459*317bf653SNate Case tbi-handle = <&tbi1>; 460*317bf653SNate Case phy-handle = <&phy1>; 461*317bf653SNate Case phy-connection-type = "sgmii"; 462*317bf653SNate Case 463*317bf653SNate Case mdio@520 { 464*317bf653SNate Case #address-cells = <1>; 465*317bf653SNate Case #size-cells = <0>; 466*317bf653SNate Case compatible = "fsl,gianfar-tbi"; 467*317bf653SNate Case reg = <0x520 0x20>; 468*317bf653SNate Case 469*317bf653SNate Case tbi1: tbi-phy@11 { 470*317bf653SNate Case reg = <0x11>; 471*317bf653SNate Case device_type = "tbi-phy"; 472*317bf653SNate Case }; 473*317bf653SNate Case }; 474*317bf653SNate Case }; 475*317bf653SNate Case 476*317bf653SNate Case /* UART0 */ 477*317bf653SNate Case serial0: serial@4500 { 478*317bf653SNate Case cell-index = <0>; 479*317bf653SNate Case device_type = "serial"; 480*317bf653SNate Case compatible = "ns16550"; 481*317bf653SNate Case reg = <0x4500 0x100>; 482*317bf653SNate Case clock-frequency = <0>; 483*317bf653SNate Case interrupts = <42 2>; 484*317bf653SNate Case interrupt-parent = <&mpic>; 485*317bf653SNate Case }; 486*317bf653SNate Case 487*317bf653SNate Case /* UART1 */ 488*317bf653SNate Case serial1: serial@4600 { 489*317bf653SNate Case cell-index = <1>; 490*317bf653SNate Case device_type = "serial"; 491*317bf653SNate Case compatible = "ns16550"; 492*317bf653SNate Case reg = <0x4600 0x100>; 493*317bf653SNate Case clock-frequency = <0>; 494*317bf653SNate Case interrupts = <42 2>; 495*317bf653SNate Case interrupt-parent = <&mpic>; 496*317bf653SNate Case }; 497*317bf653SNate Case 498*317bf653SNate Case global-utilities@e0000 { //global utilities block 499*317bf653SNate Case compatible = "fsl,mpc8572-guts"; 500*317bf653SNate Case reg = <0xe0000 0x1000>; 501*317bf653SNate Case fsl,has-rstcr; 502*317bf653SNate Case }; 503*317bf653SNate Case 504*317bf653SNate Case msi@41600 { 505*317bf653SNate Case compatible = "fsl,mpc8572-msi", "fsl,mpic-msi"; 506*317bf653SNate Case reg = <0x41600 0x80>; 507*317bf653SNate Case msi-available-ranges = <0 0x100>; 508*317bf653SNate Case interrupts = < 509*317bf653SNate Case 0xe0 0 510*317bf653SNate Case 0xe1 0 511*317bf653SNate Case 0xe2 0 512*317bf653SNate Case 0xe3 0 513*317bf653SNate Case 0xe4 0 514*317bf653SNate Case 0xe5 0 515*317bf653SNate Case 0xe6 0 516*317bf653SNate Case 0xe7 0>; 517*317bf653SNate Case interrupt-parent = <&mpic>; 518*317bf653SNate Case }; 519*317bf653SNate Case 520*317bf653SNate Case crypto@30000 { 521*317bf653SNate Case compatible = "fsl,sec3.0", "fsl,sec2.4", "fsl,sec2.2", 522*317bf653SNate Case "fsl,sec2.1", "fsl,sec2.0"; 523*317bf653SNate Case reg = <0x30000 0x10000>; 524*317bf653SNate Case interrupts = <45 2 58 2>; 525*317bf653SNate Case interrupt-parent = <&mpic>; 526*317bf653SNate Case fsl,num-channels = <4>; 527*317bf653SNate Case fsl,channel-fifo-len = <24>; 528*317bf653SNate Case fsl,exec-units-mask = <0x9fe>; 529*317bf653SNate Case fsl,descriptor-types-mask = <0x3ab0ebf>; 530*317bf653SNate Case }; 531*317bf653SNate Case 532*317bf653SNate Case mpic: pic@40000 { 533*317bf653SNate Case interrupt-controller; 534*317bf653SNate Case #address-cells = <0>; 535*317bf653SNate Case #interrupt-cells = <2>; 536*317bf653SNate Case reg = <0x40000 0x40000>; 537*317bf653SNate Case compatible = "chrp,open-pic"; 538*317bf653SNate Case device_type = "open-pic"; 539*317bf653SNate Case }; 540*317bf653SNate Case 541*317bf653SNate Case gpio0: gpio@f000 { 542*317bf653SNate Case compatible = "fsl,mpc8572-gpio"; 543*317bf653SNate Case reg = <0xf000 0x1000>; 544*317bf653SNate Case interrupts = <47 2>; 545*317bf653SNate Case interrupt-parent = <&mpic>; 546*317bf653SNate Case #gpio-cells = <2>; 547*317bf653SNate Case gpio-controller; 548*317bf653SNate Case }; 549*317bf653SNate Case 550*317bf653SNate Case gpio-leds { 551*317bf653SNate Case compatible = "gpio-leds"; 552*317bf653SNate Case 553*317bf653SNate Case heartbeat { 554*317bf653SNate Case label = "Heartbeat"; 555*317bf653SNate Case gpios = <&gpio0 4 1>; 556*317bf653SNate Case linux,default-trigger = "heartbeat"; 557*317bf653SNate Case }; 558*317bf653SNate Case 559*317bf653SNate Case yellow { 560*317bf653SNate Case label = "Yellow"; 561*317bf653SNate Case gpios = <&gpio0 5 1>; 562*317bf653SNate Case }; 563*317bf653SNate Case 564*317bf653SNate Case red { 565*317bf653SNate Case label = "Red"; 566*317bf653SNate Case gpios = <&gpio0 6 1>; 567*317bf653SNate Case }; 568*317bf653SNate Case 569*317bf653SNate Case green { 570*317bf653SNate Case label = "Green"; 571*317bf653SNate Case gpios = <&gpio0 7 1>; 572*317bf653SNate Case }; 573*317bf653SNate Case }; 574*317bf653SNate Case 575*317bf653SNate Case /* PME (pattern-matcher) */ 576*317bf653SNate Case pme@10000 { 577*317bf653SNate Case compatible = "fsl,mpc8572-pme", "pme8572"; 578*317bf653SNate Case reg = <0x10000 0x5000>; 579*317bf653SNate Case interrupts = <57 2 64 2 65 2 66 2 67 2>; 580*317bf653SNate Case interrupt-parent = <&mpic>; 581*317bf653SNate Case }; 582*317bf653SNate Case 583*317bf653SNate Case tlu@2f000 { 584*317bf653SNate Case compatible = "fsl,mpc8572-tlu", "fsl_tlu"; 585*317bf653SNate Case reg = <0x2f000 0x1000>; 586*317bf653SNate Case interupts = <61 2 >; 587*317bf653SNate Case interrupt-parent = <&mpic>; 588*317bf653SNate Case }; 589*317bf653SNate Case 590*317bf653SNate Case tlu@15000 { 591*317bf653SNate Case compatible = "fsl,mpc8572-tlu", "fsl_tlu"; 592*317bf653SNate Case reg = <0x15000 0x1000>; 593*317bf653SNate Case interupts = <75 2>; 594*317bf653SNate Case interrupt-parent = <&mpic>; 595*317bf653SNate Case }; 596*317bf653SNate Case }; 597*317bf653SNate Case 598*317bf653SNate Case /* PCI Express controller 3 - CompactPCI bus via PEX8112 bridge */ 599*317bf653SNate Case pci0: pcie@ef008000 { 600*317bf653SNate Case compatible = "fsl,mpc8548-pcie"; 601*317bf653SNate Case device_type = "pci"; 602*317bf653SNate Case #interrupt-cells = <1>; 603*317bf653SNate Case #size-cells = <2>; 604*317bf653SNate Case #address-cells = <3>; 605*317bf653SNate Case reg = <0 0xef008000 0 0x1000>; 606*317bf653SNate Case bus-range = <0 255>; 607*317bf653SNate Case ranges = <0x2000000 0x0 0xe0000000 0 0xe0000000 0x0 0x10000000 608*317bf653SNate Case 0x1000000 0x0 0x00000000 0 0xe9000000 0x0 0x10000>; 609*317bf653SNate Case clock-frequency = <33333333>; 610*317bf653SNate Case interrupt-parent = <&mpic>; 611*317bf653SNate Case interrupts = <24 2>; 612*317bf653SNate Case interrupt-map-mask = <0xff00 0x0 0x0 0x7>; 613*317bf653SNate Case interrupt-map = < 614*317bf653SNate Case 0x0 0x0 0x0 0x1 &mpic 0x0 0x1 615*317bf653SNate Case 0x0 0x0 0x0 0x2 &mpic 0x1 0x1 616*317bf653SNate Case 0x0 0x0 0x0 0x3 &mpic 0x2 0x1 617*317bf653SNate Case 0x0 0x0 0x0 0x4 &mpic 0x3 0x1 618*317bf653SNate Case >; 619*317bf653SNate Case pcie@0 { 620*317bf653SNate Case reg = <0x0 0x0 0x0 0x0 0x0>; 621*317bf653SNate Case #size-cells = <2>; 622*317bf653SNate Case #address-cells = <3>; 623*317bf653SNate Case device_type = "pci"; 624*317bf653SNate Case ranges = <0x02000000 0x0 0xe0000000 625*317bf653SNate Case 0x02000000 0x0 0xe0000000 626*317bf653SNate Case 0x0 0x10000000 627*317bf653SNate Case 628*317bf653SNate Case 0x01000000 0x0 0x0 629*317bf653SNate Case 0x01000000 0x0 0x0 630*317bf653SNate Case 0x0 0x100000>; 631*317bf653SNate Case }; 632*317bf653SNate Case }; 633*317bf653SNate Case 634*317bf653SNate Case /* PCI Express controller 2, PMC module via PEX8112 bridge */ 635*317bf653SNate Case pci1: pcie@ef009000 { 636*317bf653SNate Case compatible = "fsl,mpc8548-pcie"; 637*317bf653SNate Case device_type = "pci"; 638*317bf653SNate Case #interrupt-cells = <1>; 639*317bf653SNate Case #size-cells = <2>; 640*317bf653SNate Case #address-cells = <3>; 641*317bf653SNate Case reg = <0 0xef009000 0 0x1000>; 642*317bf653SNate Case bus-range = <0 255>; 643*317bf653SNate Case ranges = <0x2000000 0x0 0xc0000000 0 0xc0000000 0x0 0x10000000 644*317bf653SNate Case 0x1000000 0x0 0x00000000 0 0xe8800000 0x0 0x10000>; 645*317bf653SNate Case clock-frequency = <33333333>; 646*317bf653SNate Case interrupt-parent = <&mpic>; 647*317bf653SNate Case interrupts = <25 2>; 648*317bf653SNate Case interrupt-map-mask = <0xf800 0x0 0x0 0x7>; 649*317bf653SNate Case interrupt-map = < 650*317bf653SNate Case /* IDSEL 0x0 */ 651*317bf653SNate Case 0x0 0x0 0x0 0x1 &mpic 0x4 0x1 652*317bf653SNate Case 0x0 0x0 0x0 0x2 &mpic 0x5 0x1 653*317bf653SNate Case 0x0 0x0 0x0 0x3 &mpic 0x6 0x1 654*317bf653SNate Case 0x0 0x0 0x0 0x4 &mpic 0x7 0x1 655*317bf653SNate Case >; 656*317bf653SNate Case pcie@0 { 657*317bf653SNate Case reg = <0x0 0x0 0x0 0x0 0x0>; 658*317bf653SNate Case #size-cells = <2>; 659*317bf653SNate Case #address-cells = <3>; 660*317bf653SNate Case device_type = "pci"; 661*317bf653SNate Case ranges = <0x2000000 0x0 0xc0000000 662*317bf653SNate Case 0x2000000 0x0 0xc0000000 663*317bf653SNate Case 0x0 0x10000000 664*317bf653SNate Case 665*317bf653SNate Case 0x1000000 0x0 0x0 666*317bf653SNate Case 0x1000000 0x0 0x0 667*317bf653SNate Case 0x0 0x100000>; 668*317bf653SNate Case }; 669*317bf653SNate Case }; 670*317bf653SNate Case 671*317bf653SNate Case /* PCI Express controller 1, XMC P15 */ 672*317bf653SNate Case pci2: pcie@ef00a000 { 673*317bf653SNate Case compatible = "fsl,mpc8548-pcie"; 674*317bf653SNate Case device_type = "pci"; 675*317bf653SNate Case #interrupt-cells = <1>; 676*317bf653SNate Case #size-cells = <2>; 677*317bf653SNate Case #address-cells = <3>; 678*317bf653SNate Case reg = <0 0xef00a000 0 0x1000>; 679*317bf653SNate Case bus-range = <0 255>; 680*317bf653SNate Case ranges = <0x2000000 0x0 0x80000000 0 0x80000000 0x0 0x40000000 681*317bf653SNate Case 0x1000000 0x0 0x00000000 0 0xe8000000 0x0 0x10000>; 682*317bf653SNate Case clock-frequency = <33333333>; 683*317bf653SNate Case interrupt-parent = <&mpic>; 684*317bf653SNate Case interrupts = <26 2>; 685*317bf653SNate Case interrupt-map-mask = <0xf800 0x0 0x0 0x7>; 686*317bf653SNate Case interrupt-map = < 687*317bf653SNate Case /* IDSEL 0x0 */ 688*317bf653SNate Case 0x0 0x0 0x0 0x1 &mpic 0x0 0x1 689*317bf653SNate Case 0x0 0x0 0x0 0x2 &mpic 0x1 0x1 690*317bf653SNate Case 0x0 0x0 0x0 0x3 &mpic 0x2 0x1 691*317bf653SNate Case 0x0 0x0 0x0 0x4 &mpic 0x3 0x1 692*317bf653SNate Case >; 693*317bf653SNate Case pcie@0 { 694*317bf653SNate Case reg = <0x0 0x0 0x0 0x0 0x0>; 695*317bf653SNate Case #size-cells = <2>; 696*317bf653SNate Case #address-cells = <3>; 697*317bf653SNate Case device_type = "pci"; 698*317bf653SNate Case ranges = <0x2000000 0x0 0x80000000 699*317bf653SNate Case 0x2000000 0x0 0x80000000 700*317bf653SNate Case 0x0 0x40000000 701*317bf653SNate Case 702*317bf653SNate Case 0x1000000 0x0 0x0 703*317bf653SNate Case 0x1000000 0x0 0x0 704*317bf653SNate Case 0x0 0x100000>; 705*317bf653SNate Case }; 706*317bf653SNate Case }; 707*317bf653SNate Case}; 708