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