1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*c66ec88fSEmmanuel Vadot/* 3*c66ec88fSEmmanuel Vadot * MPC8308RDB Device Tree Source 4*c66ec88fSEmmanuel Vadot * 5*c66ec88fSEmmanuel Vadot * Copyright 2009 Freescale Semiconductor Inc. 6*c66ec88fSEmmanuel Vadot * Copyright 2010 Ilya Yanok, Emcraft Systems, yanok@emcraft.com 7*c66ec88fSEmmanuel Vadot */ 8*c66ec88fSEmmanuel Vadot 9*c66ec88fSEmmanuel Vadot/dts-v1/; 10*c66ec88fSEmmanuel Vadot 11*c66ec88fSEmmanuel Vadot/ { 12*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8308rdb"; 13*c66ec88fSEmmanuel Vadot #address-cells = <1>; 14*c66ec88fSEmmanuel Vadot #size-cells = <1>; 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 pci0 = &pci0; 22*c66ec88fSEmmanuel Vadot }; 23*c66ec88fSEmmanuel Vadot 24*c66ec88fSEmmanuel Vadot cpus { 25*c66ec88fSEmmanuel Vadot #address-cells = <1>; 26*c66ec88fSEmmanuel Vadot #size-cells = <0>; 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel Vadot PowerPC,8308@0 { 29*c66ec88fSEmmanuel Vadot device_type = "cpu"; 30*c66ec88fSEmmanuel Vadot reg = <0x0>; 31*c66ec88fSEmmanuel Vadot d-cache-line-size = <32>; 32*c66ec88fSEmmanuel Vadot i-cache-line-size = <32>; 33*c66ec88fSEmmanuel Vadot d-cache-size = <16384>; 34*c66ec88fSEmmanuel Vadot i-cache-size = <16384>; 35*c66ec88fSEmmanuel Vadot timebase-frequency = <0>; // from bootloader 36*c66ec88fSEmmanuel Vadot bus-frequency = <0>; // from bootloader 37*c66ec88fSEmmanuel Vadot clock-frequency = <0>; // from bootloader 38*c66ec88fSEmmanuel Vadot }; 39*c66ec88fSEmmanuel Vadot }; 40*c66ec88fSEmmanuel Vadot 41*c66ec88fSEmmanuel Vadot memory { 42*c66ec88fSEmmanuel Vadot device_type = "memory"; 43*c66ec88fSEmmanuel Vadot reg = <0x00000000 0x08000000>; // 128MB at 0 44*c66ec88fSEmmanuel Vadot }; 45*c66ec88fSEmmanuel Vadot 46*c66ec88fSEmmanuel Vadot localbus@e0005000 { 47*c66ec88fSEmmanuel Vadot #address-cells = <2>; 48*c66ec88fSEmmanuel Vadot #size-cells = <1>; 49*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8315-elbc", "fsl,elbc", "simple-bus"; 50*c66ec88fSEmmanuel Vadot reg = <0xe0005000 0x1000>; 51*c66ec88fSEmmanuel Vadot interrupts = <77 0x8>; 52*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 53*c66ec88fSEmmanuel Vadot 54*c66ec88fSEmmanuel Vadot // CS0 and CS1 are swapped when 55*c66ec88fSEmmanuel Vadot // booting from nand, but the 56*c66ec88fSEmmanuel Vadot // addresses are the same. 57*c66ec88fSEmmanuel Vadot ranges = <0x0 0x0 0xfe000000 0x00800000 58*c66ec88fSEmmanuel Vadot 0x1 0x0 0xe0600000 0x00002000 59*c66ec88fSEmmanuel Vadot 0x2 0x0 0xf0000000 0x00020000 60*c66ec88fSEmmanuel Vadot 0x3 0x0 0xfa000000 0x00008000>; 61*c66ec88fSEmmanuel Vadot 62*c66ec88fSEmmanuel Vadot flash@0,0 { 63*c66ec88fSEmmanuel Vadot #address-cells = <1>; 64*c66ec88fSEmmanuel Vadot #size-cells = <1>; 65*c66ec88fSEmmanuel Vadot compatible = "cfi-flash"; 66*c66ec88fSEmmanuel Vadot reg = <0x0 0x0 0x800000>; 67*c66ec88fSEmmanuel Vadot bank-width = <2>; 68*c66ec88fSEmmanuel Vadot device-width = <1>; 69*c66ec88fSEmmanuel Vadot 70*c66ec88fSEmmanuel Vadot u-boot@0 { 71*c66ec88fSEmmanuel Vadot reg = <0x0 0x60000>; 72*c66ec88fSEmmanuel Vadot read-only; 73*c66ec88fSEmmanuel Vadot }; 74*c66ec88fSEmmanuel Vadot env@60000 { 75*c66ec88fSEmmanuel Vadot reg = <0x60000 0x10000>; 76*c66ec88fSEmmanuel Vadot }; 77*c66ec88fSEmmanuel Vadot env1@70000 { 78*c66ec88fSEmmanuel Vadot reg = <0x70000 0x10000>; 79*c66ec88fSEmmanuel Vadot }; 80*c66ec88fSEmmanuel Vadot kernel@80000 { 81*c66ec88fSEmmanuel Vadot reg = <0x80000 0x200000>; 82*c66ec88fSEmmanuel Vadot }; 83*c66ec88fSEmmanuel Vadot dtb@280000 { 84*c66ec88fSEmmanuel Vadot reg = <0x280000 0x10000>; 85*c66ec88fSEmmanuel Vadot }; 86*c66ec88fSEmmanuel Vadot ramdisk@290000 { 87*c66ec88fSEmmanuel Vadot reg = <0x290000 0x570000>; 88*c66ec88fSEmmanuel Vadot }; 89*c66ec88fSEmmanuel Vadot }; 90*c66ec88fSEmmanuel Vadot 91*c66ec88fSEmmanuel Vadot nand@1,0 { 92*c66ec88fSEmmanuel Vadot #address-cells = <1>; 93*c66ec88fSEmmanuel Vadot #size-cells = <1>; 94*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8315-fcm-nand", 95*c66ec88fSEmmanuel Vadot "fsl,elbc-fcm-nand"; 96*c66ec88fSEmmanuel Vadot reg = <0x1 0x0 0x2000>; 97*c66ec88fSEmmanuel Vadot 98*c66ec88fSEmmanuel Vadot jffs2@0 { 99*c66ec88fSEmmanuel Vadot reg = <0x0 0x2000000>; 100*c66ec88fSEmmanuel Vadot }; 101*c66ec88fSEmmanuel Vadot }; 102*c66ec88fSEmmanuel Vadot }; 103*c66ec88fSEmmanuel Vadot 104*c66ec88fSEmmanuel Vadot immr@e0000000 { 105*c66ec88fSEmmanuel Vadot #address-cells = <1>; 106*c66ec88fSEmmanuel Vadot #size-cells = <1>; 107*c66ec88fSEmmanuel Vadot device_type = "soc"; 108*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8308-immr", "simple-bus"; 109*c66ec88fSEmmanuel Vadot ranges = <0 0xe0000000 0x00100000>; 110*c66ec88fSEmmanuel Vadot reg = <0xe0000000 0x00000200>; 111*c66ec88fSEmmanuel Vadot bus-frequency = <0>; 112*c66ec88fSEmmanuel Vadot 113*c66ec88fSEmmanuel Vadot i2c@3000 { 114*c66ec88fSEmmanuel Vadot #address-cells = <1>; 115*c66ec88fSEmmanuel Vadot #size-cells = <0>; 116*c66ec88fSEmmanuel Vadot cell-index = <0>; 117*c66ec88fSEmmanuel Vadot compatible = "fsl-i2c"; 118*c66ec88fSEmmanuel Vadot reg = <0x3000 0x100>; 119*c66ec88fSEmmanuel Vadot interrupts = <14 0x8>; 120*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 121*c66ec88fSEmmanuel Vadot dfsrr; 122*c66ec88fSEmmanuel Vadot rtc@68 { 123*c66ec88fSEmmanuel Vadot compatible = "dallas,ds1339"; 124*c66ec88fSEmmanuel Vadot reg = <0x68>; 125*c66ec88fSEmmanuel Vadot }; 126*c66ec88fSEmmanuel Vadot }; 127*c66ec88fSEmmanuel Vadot 128*c66ec88fSEmmanuel Vadot usb@23000 { 129*c66ec88fSEmmanuel Vadot compatible = "fsl-usb2-dr"; 130*c66ec88fSEmmanuel Vadot reg = <0x23000 0x1000>; 131*c66ec88fSEmmanuel Vadot #address-cells = <1>; 132*c66ec88fSEmmanuel Vadot #size-cells = <0>; 133*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 134*c66ec88fSEmmanuel Vadot interrupts = <38 0x8>; 135*c66ec88fSEmmanuel Vadot dr_mode = "peripheral"; 136*c66ec88fSEmmanuel Vadot phy_type = "ulpi"; 137*c66ec88fSEmmanuel Vadot }; 138*c66ec88fSEmmanuel Vadot 139*c66ec88fSEmmanuel Vadot enet0: ethernet@24000 { 140*c66ec88fSEmmanuel Vadot #address-cells = <1>; 141*c66ec88fSEmmanuel Vadot #size-cells = <1>; 142*c66ec88fSEmmanuel Vadot ranges = <0x0 0x24000 0x1000>; 143*c66ec88fSEmmanuel Vadot 144*c66ec88fSEmmanuel Vadot cell-index = <0>; 145*c66ec88fSEmmanuel Vadot device_type = "network"; 146*c66ec88fSEmmanuel Vadot model = "eTSEC"; 147*c66ec88fSEmmanuel Vadot compatible = "gianfar"; 148*c66ec88fSEmmanuel Vadot reg = <0x24000 0x1000>; 149*c66ec88fSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; 150*c66ec88fSEmmanuel Vadot interrupts = <32 0x8 33 0x8 34 0x8>; 151*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 152*c66ec88fSEmmanuel Vadot tbi-handle = < &tbi0 >; 153*c66ec88fSEmmanuel Vadot phy-handle = < &phy2 >; 154*c66ec88fSEmmanuel Vadot fsl,magic-packet; 155*c66ec88fSEmmanuel Vadot 156*c66ec88fSEmmanuel Vadot mdio@520 { 157*c66ec88fSEmmanuel Vadot #address-cells = <1>; 158*c66ec88fSEmmanuel Vadot #size-cells = <0>; 159*c66ec88fSEmmanuel Vadot compatible = "fsl,gianfar-mdio"; 160*c66ec88fSEmmanuel Vadot reg = <0x520 0x20>; 161*c66ec88fSEmmanuel Vadot phy2: ethernet-phy@2 { 162*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 163*c66ec88fSEmmanuel Vadot interrupts = <17 0x8>; 164*c66ec88fSEmmanuel Vadot reg = <0x2>; 165*c66ec88fSEmmanuel Vadot }; 166*c66ec88fSEmmanuel Vadot tbi0: tbi-phy@11 { 167*c66ec88fSEmmanuel Vadot reg = <0x11>; 168*c66ec88fSEmmanuel Vadot device_type = "tbi-phy"; 169*c66ec88fSEmmanuel Vadot }; 170*c66ec88fSEmmanuel Vadot }; 171*c66ec88fSEmmanuel Vadot }; 172*c66ec88fSEmmanuel Vadot 173*c66ec88fSEmmanuel Vadot enet1: ethernet@25000 { 174*c66ec88fSEmmanuel Vadot #address-cells = <1>; 175*c66ec88fSEmmanuel Vadot #size-cells = <1>; 176*c66ec88fSEmmanuel Vadot cell-index = <1>; 177*c66ec88fSEmmanuel Vadot device_type = "network"; 178*c66ec88fSEmmanuel Vadot model = "eTSEC"; 179*c66ec88fSEmmanuel Vadot compatible = "gianfar"; 180*c66ec88fSEmmanuel Vadot reg = <0x25000 0x1000>; 181*c66ec88fSEmmanuel Vadot ranges = <0x0 0x25000 0x1000>; 182*c66ec88fSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; 183*c66ec88fSEmmanuel Vadot interrupts = <35 0x8 36 0x8 37 0x8>; 184*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 185*c66ec88fSEmmanuel Vadot tbi-handle = < &tbi1 >; 186*c66ec88fSEmmanuel Vadot /* Vitesse 7385 isn't on the MDIO bus */ 187*c66ec88fSEmmanuel Vadot fixed-link = <1 1 1000 0 0>; 188*c66ec88fSEmmanuel Vadot fsl,magic-packet; 189*c66ec88fSEmmanuel Vadot 190*c66ec88fSEmmanuel Vadot mdio@520 { 191*c66ec88fSEmmanuel Vadot #address-cells = <1>; 192*c66ec88fSEmmanuel Vadot #size-cells = <0>; 193*c66ec88fSEmmanuel Vadot compatible = "fsl,gianfar-tbi"; 194*c66ec88fSEmmanuel Vadot reg = <0x520 0x20>; 195*c66ec88fSEmmanuel Vadot 196*c66ec88fSEmmanuel Vadot tbi1: tbi-phy@11 { 197*c66ec88fSEmmanuel Vadot reg = <0x11>; 198*c66ec88fSEmmanuel Vadot device_type = "tbi-phy"; 199*c66ec88fSEmmanuel Vadot }; 200*c66ec88fSEmmanuel Vadot }; 201*c66ec88fSEmmanuel Vadot }; 202*c66ec88fSEmmanuel Vadot 203*c66ec88fSEmmanuel Vadot serial0: serial@4500 { 204*c66ec88fSEmmanuel Vadot cell-index = <0>; 205*c66ec88fSEmmanuel Vadot device_type = "serial"; 206*c66ec88fSEmmanuel Vadot compatible = "fsl,ns16550", "ns16550"; 207*c66ec88fSEmmanuel Vadot reg = <0x4500 0x100>; 208*c66ec88fSEmmanuel Vadot clock-frequency = <133333333>; 209*c66ec88fSEmmanuel Vadot interrupts = <9 0x8>; 210*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 211*c66ec88fSEmmanuel Vadot }; 212*c66ec88fSEmmanuel Vadot 213*c66ec88fSEmmanuel Vadot serial1: serial@4600 { 214*c66ec88fSEmmanuel Vadot cell-index = <1>; 215*c66ec88fSEmmanuel Vadot device_type = "serial"; 216*c66ec88fSEmmanuel Vadot compatible = "fsl,ns16550", "ns16550"; 217*c66ec88fSEmmanuel Vadot reg = <0x4600 0x100>; 218*c66ec88fSEmmanuel Vadot clock-frequency = <133333333>; 219*c66ec88fSEmmanuel Vadot interrupts = <10 0x8>; 220*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 221*c66ec88fSEmmanuel Vadot }; 222*c66ec88fSEmmanuel Vadot 223*c66ec88fSEmmanuel Vadot gpio@c00 { 224*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 225*c66ec88fSEmmanuel Vadot device_type = "gpio"; 226*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8308-gpio", "fsl,mpc8349-gpio"; 227*c66ec88fSEmmanuel Vadot reg = <0xc00 0x18>; 228*c66ec88fSEmmanuel Vadot interrupts = <74 0x8>; 229*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 230*c66ec88fSEmmanuel Vadot gpio-controller; 231*c66ec88fSEmmanuel Vadot }; 232*c66ec88fSEmmanuel Vadot 233*c66ec88fSEmmanuel Vadot /* IPIC 234*c66ec88fSEmmanuel Vadot * interrupts cell = <intr #, sense> 235*c66ec88fSEmmanuel Vadot * sense values match linux IORESOURCE_IRQ_* defines: 236*c66ec88fSEmmanuel Vadot * sense == 8: Level, low assertion 237*c66ec88fSEmmanuel Vadot * sense == 2: Edge, high-to-low change 238*c66ec88fSEmmanuel Vadot */ 239*c66ec88fSEmmanuel Vadot ipic: interrupt-controller@700 { 240*c66ec88fSEmmanuel Vadot compatible = "fsl,ipic"; 241*c66ec88fSEmmanuel Vadot interrupt-controller; 242*c66ec88fSEmmanuel Vadot #address-cells = <0>; 243*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 244*c66ec88fSEmmanuel Vadot reg = <0x700 0x100>; 245*c66ec88fSEmmanuel Vadot device_type = "ipic"; 246*c66ec88fSEmmanuel Vadot }; 247*c66ec88fSEmmanuel Vadot 248*c66ec88fSEmmanuel Vadot ipic-msi@7c0 { 249*c66ec88fSEmmanuel Vadot compatible = "fsl,ipic-msi"; 250*c66ec88fSEmmanuel Vadot reg = <0x7c0 0x40>; 251*c66ec88fSEmmanuel Vadot msi-available-ranges = <0x0 0x100>; 252*c66ec88fSEmmanuel Vadot interrupts = < 0x43 0x8 253*c66ec88fSEmmanuel Vadot 0x4 0x8 254*c66ec88fSEmmanuel Vadot 0x51 0x8 255*c66ec88fSEmmanuel Vadot 0x52 0x8 256*c66ec88fSEmmanuel Vadot 0x56 0x8 257*c66ec88fSEmmanuel Vadot 0x57 0x8 258*c66ec88fSEmmanuel Vadot 0x58 0x8 259*c66ec88fSEmmanuel Vadot 0x59 0x8 >; 260*c66ec88fSEmmanuel Vadot interrupt-parent = < &ipic >; 261*c66ec88fSEmmanuel Vadot }; 262*c66ec88fSEmmanuel Vadot 263*c66ec88fSEmmanuel Vadot dma@2c000 { 264*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8308-dma"; 265*c66ec88fSEmmanuel Vadot reg = <0x2c000 0x1800>; 266*c66ec88fSEmmanuel Vadot interrupts = <3 0x8 267*c66ec88fSEmmanuel Vadot 94 0x8>; 268*c66ec88fSEmmanuel Vadot interrupt-parent = < &ipic >; 269*c66ec88fSEmmanuel Vadot }; 270*c66ec88fSEmmanuel Vadot 271*c66ec88fSEmmanuel Vadot }; 272*c66ec88fSEmmanuel Vadot 273*c66ec88fSEmmanuel Vadot pci0: pcie@e0009000 { 274*c66ec88fSEmmanuel Vadot #address-cells = <3>; 275*c66ec88fSEmmanuel Vadot #size-cells = <2>; 276*c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 277*c66ec88fSEmmanuel Vadot device_type = "pci"; 278*c66ec88fSEmmanuel Vadot compatible = "fsl,mpc8308-pcie", "fsl,mpc8314-pcie"; 279*c66ec88fSEmmanuel Vadot reg = <0xe0009000 0x00001000 280*c66ec88fSEmmanuel Vadot 0xb0000000 0x01000000>; 281*c66ec88fSEmmanuel Vadot ranges = <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000 282*c66ec88fSEmmanuel Vadot 0x01000000 0 0x00000000 0xb1000000 0 0x00800000>; 283*c66ec88fSEmmanuel Vadot bus-range = <0 0>; 284*c66ec88fSEmmanuel Vadot interrupt-map-mask = <0xf800 0 0 7>; 285*c66ec88fSEmmanuel Vadot interrupt-map = <0 0 0 1 &ipic 1 8 286*c66ec88fSEmmanuel Vadot 0 0 0 2 &ipic 1 8 287*c66ec88fSEmmanuel Vadot 0 0 0 3 &ipic 1 8 288*c66ec88fSEmmanuel Vadot 0 0 0 4 &ipic 1 8>; 289*c66ec88fSEmmanuel Vadot interrupts = <0x1 0x8>; 290*c66ec88fSEmmanuel Vadot interrupt-parent = <&ipic>; 291*c66ec88fSEmmanuel Vadot clock-frequency = <0>; 292*c66ec88fSEmmanuel Vadot 293*c66ec88fSEmmanuel Vadot pcie@0 { 294*c66ec88fSEmmanuel Vadot #address-cells = <3>; 295*c66ec88fSEmmanuel Vadot #size-cells = <2>; 296*c66ec88fSEmmanuel Vadot device_type = "pci"; 297*c66ec88fSEmmanuel Vadot reg = <0 0 0 0 0>; 298*c66ec88fSEmmanuel Vadot ranges = <0x02000000 0 0xa0000000 299*c66ec88fSEmmanuel Vadot 0x02000000 0 0xa0000000 300*c66ec88fSEmmanuel Vadot 0 0x10000000 301*c66ec88fSEmmanuel Vadot 0x01000000 0 0x00000000 302*c66ec88fSEmmanuel Vadot 0x01000000 0 0x00000000 303*c66ec88fSEmmanuel Vadot 0 0x00800000>; 304*c66ec88fSEmmanuel Vadot }; 305*c66ec88fSEmmanuel Vadot }; 306*c66ec88fSEmmanuel Vadot}; 307