1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*c66ec88fSEmmanuel Vadot/* 3*c66ec88fSEmmanuel Vadot * Device Tree for the MGCOGE plattform from keymile 4*c66ec88fSEmmanuel Vadot * 5*c66ec88fSEmmanuel Vadot * Copyright 2008 DENX Software Engineering GmbH 6*c66ec88fSEmmanuel Vadot * Heiko Schocher <hs@denx.de> 7*c66ec88fSEmmanuel Vadot */ 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel Vadot/dts-v1/; 10*c66ec88fSEmmanuel Vadot/ { 11*c66ec88fSEmmanuel Vadot model = "MGCOGE"; 12*c66ec88fSEmmanuel Vadot compatible = "keymile,km82xx"; 13*c66ec88fSEmmanuel Vadot #address-cells = <1>; 14*c66ec88fSEmmanuel Vadot #size-cells = <1>; 15*c66ec88fSEmmanuel Vadot 16*c66ec88fSEmmanuel Vadot aliases { 17*c66ec88fSEmmanuel Vadot ethernet0 = ð0; 18*c66ec88fSEmmanuel Vadot serial0 = &smc2; 19*c66ec88fSEmmanuel Vadot }; 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel Vadot cpus { 22*c66ec88fSEmmanuel Vadot #address-cells = <1>; 23*c66ec88fSEmmanuel Vadot #size-cells = <0>; 24*c66ec88fSEmmanuel Vadot 25*c66ec88fSEmmanuel Vadot PowerPC,8247@0 { 26*c66ec88fSEmmanuel Vadot device_type = "cpu"; 27*c66ec88fSEmmanuel Vadot reg = <0>; 28*c66ec88fSEmmanuel Vadot d-cache-line-size = <32>; 29*c66ec88fSEmmanuel Vadot i-cache-line-size = <32>; 30*c66ec88fSEmmanuel Vadot d-cache-size = <16384>; 31*c66ec88fSEmmanuel Vadot i-cache-size = <16384>; 32*c66ec88fSEmmanuel Vadot timebase-frequency = <0>; /* Filled in by U-Boot */ 33*c66ec88fSEmmanuel Vadot clock-frequency = <0>; /* Filled in by U-Boot */ 34*c66ec88fSEmmanuel Vadot bus-frequency = <0>; /* Filled in by U-Boot */ 35*c66ec88fSEmmanuel Vadot }; 36*c66ec88fSEmmanuel Vadot }; 37*c66ec88fSEmmanuel Vadot 38*c66ec88fSEmmanuel Vadot localbus@f0010100 { 39*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-localbus", 40*c66ec88fSEmmanuel Vadot "fsl,pq2-localbus", 41*c66ec88fSEmmanuel Vadot "simple-bus"; 42*c66ec88fSEmmanuel Vadot #address-cells = <2>; 43*c66ec88fSEmmanuel Vadot #size-cells = <1>; 44*c66ec88fSEmmanuel Vadot reg = <0xf0010100 0x40>; 45*c66ec88fSEmmanuel Vadot 46*c66ec88fSEmmanuel Vadot ranges = <0 0 0xfe000000 0x00400000 47*c66ec88fSEmmanuel Vadot 1 0 0x30000000 0x00010000 48*c66ec88fSEmmanuel Vadot 2 0 0x40000000 0x00010000 49*c66ec88fSEmmanuel Vadot 5 0 0x50000000 0x04000000 50*c66ec88fSEmmanuel Vadot >; 51*c66ec88fSEmmanuel Vadot 52*c66ec88fSEmmanuel Vadot flash@0,0 { 53*c66ec88fSEmmanuel Vadot compatible = "cfi-flash"; 54*c66ec88fSEmmanuel Vadot reg = <0 0x0 0x400000>; 55*c66ec88fSEmmanuel Vadot #address-cells = <1>; 56*c66ec88fSEmmanuel Vadot #size-cells = <1>; 57*c66ec88fSEmmanuel Vadot bank-width = <1>; 58*c66ec88fSEmmanuel Vadot device-width = <1>; 59*c66ec88fSEmmanuel Vadot partition@0 { 60*c66ec88fSEmmanuel Vadot label = "u-boot"; 61*c66ec88fSEmmanuel Vadot reg = <0x00000 0xC0000>; 62*c66ec88fSEmmanuel Vadot }; 63*c66ec88fSEmmanuel Vadot partition@1 { 64*c66ec88fSEmmanuel Vadot label = "env"; 65*c66ec88fSEmmanuel Vadot reg = <0xC0000 0x20000>; 66*c66ec88fSEmmanuel Vadot }; 67*c66ec88fSEmmanuel Vadot partition@2 { 68*c66ec88fSEmmanuel Vadot label = "envred"; 69*c66ec88fSEmmanuel Vadot reg = <0xE0000 0x20000>; 70*c66ec88fSEmmanuel Vadot }; 71*c66ec88fSEmmanuel Vadot partition@3 { 72*c66ec88fSEmmanuel Vadot label = "free"; 73*c66ec88fSEmmanuel Vadot reg = <0x100000 0x300000>; 74*c66ec88fSEmmanuel Vadot }; 75*c66ec88fSEmmanuel Vadot }; 76*c66ec88fSEmmanuel Vadot 77*c66ec88fSEmmanuel Vadot flash@5,0 { 78*c66ec88fSEmmanuel Vadot compatible = "cfi-flash"; 79*c66ec88fSEmmanuel Vadot reg = <5 0x00000000 0x02000000 80*c66ec88fSEmmanuel Vadot 5 0x02000000 0x02000000>; 81*c66ec88fSEmmanuel Vadot #address-cells = <1>; 82*c66ec88fSEmmanuel Vadot #size-cells = <1>; 83*c66ec88fSEmmanuel Vadot bank-width = <2>; 84*c66ec88fSEmmanuel Vadot partition@app { /* 64 MBytes */ 85*c66ec88fSEmmanuel Vadot label = "ubi0"; 86*c66ec88fSEmmanuel Vadot reg = <0x00000000 0x04000000>; 87*c66ec88fSEmmanuel Vadot }; 88*c66ec88fSEmmanuel Vadot }; 89*c66ec88fSEmmanuel Vadot }; 90*c66ec88fSEmmanuel Vadot 91*c66ec88fSEmmanuel Vadot memory { 92*c66ec88fSEmmanuel Vadot device_type = "memory"; 93*c66ec88fSEmmanuel Vadot reg = <0 0>; /* Filled in by U-Boot */ 94*c66ec88fSEmmanuel Vadot }; 95*c66ec88fSEmmanuel Vadot 96*c66ec88fSEmmanuel Vadot soc@f0000000 { 97*c66ec88fSEmmanuel Vadot #address-cells = <1>; 98*c66ec88fSEmmanuel Vadot #size-cells = <1>; 99*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-immr", "fsl,pq2-soc", "simple-bus"; 100*c66ec88fSEmmanuel Vadot ranges = <0x00000000 0xf0000000 0x00053000>; 101*c66ec88fSEmmanuel Vadot 102*c66ec88fSEmmanuel Vadot // Temporary until code stops depending on it. 103*c66ec88fSEmmanuel Vadot device_type = "soc"; 104*c66ec88fSEmmanuel Vadot 105*c66ec88fSEmmanuel Vadot cpm@119c0 { 106*c66ec88fSEmmanuel Vadot #address-cells = <1>; 107*c66ec88fSEmmanuel Vadot #size-cells = <1>; 108*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 109*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-cpm", "fsl,cpm2", 110*c66ec88fSEmmanuel Vadot "simple-bus"; 111*c66ec88fSEmmanuel Vadot reg = <0x119c0 0x30>; 112*c66ec88fSEmmanuel Vadot ranges; 113*c66ec88fSEmmanuel Vadot 114*c66ec88fSEmmanuel Vadot muram { 115*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm-muram"; 116*c66ec88fSEmmanuel Vadot #address-cells = <1>; 117*c66ec88fSEmmanuel Vadot #size-cells = <1>; 118*c66ec88fSEmmanuel Vadot ranges = <0 0 0x10000>; 119*c66ec88fSEmmanuel Vadot 120*c66ec88fSEmmanuel Vadot data@0 { 121*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm-muram-data"; 122*c66ec88fSEmmanuel Vadot reg = <0x80 0x1f80 0x9800 0x800>; 123*c66ec88fSEmmanuel Vadot }; 124*c66ec88fSEmmanuel Vadot }; 125*c66ec88fSEmmanuel Vadot 126*c66ec88fSEmmanuel Vadot brg@119f0 { 127*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-brg", 128*c66ec88fSEmmanuel Vadot "fsl,cpm2-brg", 129*c66ec88fSEmmanuel Vadot "fsl,cpm-brg"; 130*c66ec88fSEmmanuel Vadot reg = <0x119f0 0x10 0x115f0 0x10>; 131*c66ec88fSEmmanuel Vadot }; 132*c66ec88fSEmmanuel Vadot 133*c66ec88fSEmmanuel Vadot /* Monitor port/SMC2 */ 134*c66ec88fSEmmanuel Vadot smc2: serial@11a90 { 135*c66ec88fSEmmanuel Vadot device_type = "serial"; 136*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-smc-uart", 137*c66ec88fSEmmanuel Vadot "fsl,cpm2-smc-uart"; 138*c66ec88fSEmmanuel Vadot reg = <0x11a90 0x20 0x88fc 0x02>; 139*c66ec88fSEmmanuel Vadot interrupts = <5 8>; 140*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 141*c66ec88fSEmmanuel Vadot fsl,cpm-brg = <2>; 142*c66ec88fSEmmanuel Vadot fsl,cpm-command = <0x21200000>; 143*c66ec88fSEmmanuel Vadot current-speed = <0>; /* Filled in by U-Boot */ 144*c66ec88fSEmmanuel Vadot }; 145*c66ec88fSEmmanuel Vadot 146*c66ec88fSEmmanuel Vadot eth0: ethernet@11a60 { 147*c66ec88fSEmmanuel Vadot device_type = "network"; 148*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-scc-enet", 149*c66ec88fSEmmanuel Vadot "fsl,cpm2-scc-enet"; 150*c66ec88fSEmmanuel Vadot reg = <0x11a60 0x20 0x8300 0x100 0x11390 1>; 151*c66ec88fSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; /* Filled in by U-Boot */ 152*c66ec88fSEmmanuel Vadot interrupts = <43 8>; 153*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 154*c66ec88fSEmmanuel Vadot linux,network-index = <0>; 155*c66ec88fSEmmanuel Vadot fsl,cpm-command = <0xce00000>; 156*c66ec88fSEmmanuel Vadot fixed-link = <0 0 10 0 0>; 157*c66ec88fSEmmanuel Vadot }; 158*c66ec88fSEmmanuel Vadot 159*c66ec88fSEmmanuel Vadot i2c@11860 { 160*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8272-i2c", 161*c66ec88fSEmmanuel Vadot "fsl,cpm2-i2c"; 162*c66ec88fSEmmanuel Vadot reg = <0x11860 0x20 0x8afc 0x2>; 163*c66ec88fSEmmanuel Vadot interrupts = <1 8>; 164*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 165*c66ec88fSEmmanuel Vadot fsl,cpm-command = <0x29600000>; 166*c66ec88fSEmmanuel Vadot #address-cells = <1>; 167*c66ec88fSEmmanuel Vadot #size-cells = <0>; 168*c66ec88fSEmmanuel Vadot }; 169*c66ec88fSEmmanuel Vadot 170*c66ec88fSEmmanuel Vadot mdio@10d40 { 171*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm2-mdio-bitbang"; 172*c66ec88fSEmmanuel Vadot reg = <0x10d00 0x14>; 173*c66ec88fSEmmanuel Vadot #address-cells = <1>; 174*c66ec88fSEmmanuel Vadot #size-cells = <0>; 175*c66ec88fSEmmanuel Vadot fsl,mdio-pin = <12>; 176*c66ec88fSEmmanuel Vadot fsl,mdc-pin = <13>; 177*c66ec88fSEmmanuel Vadot 178*c66ec88fSEmmanuel Vadot phy0: ethernet-phy@0 { 179*c66ec88fSEmmanuel Vadot reg = <0x0>; 180*c66ec88fSEmmanuel Vadot }; 181*c66ec88fSEmmanuel Vadot 182*c66ec88fSEmmanuel Vadot phy1: ethernet-phy@1 { 183*c66ec88fSEmmanuel Vadot reg = <0x1>; 184*c66ec88fSEmmanuel Vadot }; 185*c66ec88fSEmmanuel Vadot }; 186*c66ec88fSEmmanuel Vadot 187*c66ec88fSEmmanuel Vadot /* FCC1 management to switch */ 188*c66ec88fSEmmanuel Vadot ethernet@11300 { 189*c66ec88fSEmmanuel Vadot device_type = "network"; 190*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm2-fcc-enet"; 191*c66ec88fSEmmanuel Vadot reg = <0x11300 0x20 0x8400 0x100 0x11390 0x1>; 192*c66ec88fSEmmanuel Vadot local-mac-address = [ 00 01 02 03 04 07 ]; 193*c66ec88fSEmmanuel Vadot interrupts = <32 8>; 194*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 195*c66ec88fSEmmanuel Vadot phy-handle = <&phy0>; 196*c66ec88fSEmmanuel Vadot linux,network-index = <1>; 197*c66ec88fSEmmanuel Vadot fsl,cpm-command = <0x12000300>; 198*c66ec88fSEmmanuel Vadot }; 199*c66ec88fSEmmanuel Vadot 200*c66ec88fSEmmanuel Vadot /* FCC2 to redundant core unit over backplane */ 201*c66ec88fSEmmanuel Vadot ethernet@11320 { 202*c66ec88fSEmmanuel Vadot device_type = "network"; 203*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm2-fcc-enet"; 204*c66ec88fSEmmanuel Vadot reg = <0x11320 0x20 0x8500 0x100 0x113b0 0x1>; 205*c66ec88fSEmmanuel Vadot local-mac-address = [ 00 01 02 03 04 08 ]; 206*c66ec88fSEmmanuel Vadot interrupts = <33 8>; 207*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 208*c66ec88fSEmmanuel Vadot phy-handle = <&phy1>; 209*c66ec88fSEmmanuel Vadot linux,network-index = <2>; 210*c66ec88fSEmmanuel Vadot fsl,cpm-command = <0x16200300>; 211*c66ec88fSEmmanuel Vadot }; 212*c66ec88fSEmmanuel Vadot 213*c66ec88fSEmmanuel Vadot usb@11b60 { 214*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8272-cpm-usb"; 215*c66ec88fSEmmanuel Vadot mode = "peripheral"; 216*c66ec88fSEmmanuel Vadot reg = <0x11b60 0x40 0x8b00 0x100>; 217*c66ec88fSEmmanuel Vadot interrupts = <11 8>; 218*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 219*c66ec88fSEmmanuel Vadot usb-clock = <5>; 220*c66ec88fSEmmanuel Vadot }; 221*c66ec88fSEmmanuel Vadot spi@11aa0 { 222*c66ec88fSEmmanuel Vadot cell-index = <0>; 223*c66ec88fSEmmanuel Vadot compatible = "fsl,spi", "fsl,cpm2-spi"; 224*c66ec88fSEmmanuel Vadot reg = <0x11a80 0x40 0x89fc 0x2>; 225*c66ec88fSEmmanuel Vadot interrupts = <2 8>; 226*c66ec88fSEmmanuel Vadot interrupt-parent = <&PIC>; 227*c66ec88fSEmmanuel Vadot cs-gpios = < &cpm2_pio_d 19 0>; 228*c66ec88fSEmmanuel Vadot }; 229*c66ec88fSEmmanuel Vadot 230*c66ec88fSEmmanuel Vadot }; 231*c66ec88fSEmmanuel Vadot 232*c66ec88fSEmmanuel Vadot cpm2_pio_d: gpio-controller@10d60 { 233*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 234*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm2-pario-bank"; 235*c66ec88fSEmmanuel Vadot reg = <0x10d60 0x14>; 236*c66ec88fSEmmanuel Vadot gpio-controller; 237*c66ec88fSEmmanuel Vadot }; 238*c66ec88fSEmmanuel Vadot 239*c66ec88fSEmmanuel Vadot cpm2_pio_c: gpio-controller@10d40 { 240*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 241*c66ec88fSEmmanuel Vadot compatible = "fsl,cpm2-pario-bank"; 242*c66ec88fSEmmanuel Vadot reg = <0x10d40 0x14>; 243*c66ec88fSEmmanuel Vadot gpio-controller; 244*c66ec88fSEmmanuel Vadot }; 245*c66ec88fSEmmanuel Vadot 246*c66ec88fSEmmanuel Vadot PIC: interrupt-controller@10c00 { 247*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 248*c66ec88fSEmmanuel Vadot interrupt-controller; 249*c66ec88fSEmmanuel Vadot reg = <0x10c00 0x80>; 250*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8247-pic", "fsl,pq2-pic"; 251*c66ec88fSEmmanuel Vadot }; 252*c66ec88fSEmmanuel Vadot }; 253*c66ec88fSEmmanuel Vadot}; 254