1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2*c66ec88fSEmmanuel Vadot/* 3*c66ec88fSEmmanuel Vadot * GE PPC9A Device Tree Source 4*c66ec88fSEmmanuel Vadot * 5*c66ec88fSEmmanuel Vadot * Copyright 2008 GE Intelligent Platforms Embedded Systems, Inc. 6*c66ec88fSEmmanuel Vadot * 7*c66ec88fSEmmanuel Vadot * Based on: SBS CM6 Device Tree Source 8*c66ec88fSEmmanuel Vadot * Copyright 2007 SBS Technologies GmbH & Co. KG 9*c66ec88fSEmmanuel Vadot * And: mpc8641_hpcn.dts (MPC8641 HPCN Device Tree Source) 10*c66ec88fSEmmanuel Vadot * Copyright 2006 Freescale Semiconductor Inc. 11*c66ec88fSEmmanuel Vadot */ 12*c66ec88fSEmmanuel Vadot 13*c66ec88fSEmmanuel Vadot/* 14*c66ec88fSEmmanuel Vadot * Compiled with dtc -I dts -O dtb -o gef_ppc9a.dtb gef_ppc9a.dts 15*c66ec88fSEmmanuel Vadot */ 16*c66ec88fSEmmanuel Vadot 17*c66ec88fSEmmanuel Vadot/include/ "mpc8641si-pre.dtsi" 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel Vadot/ { 20*c66ec88fSEmmanuel Vadot model = "GEF_PPC9A"; 21*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a"; 22*c66ec88fSEmmanuel Vadot 23*c66ec88fSEmmanuel Vadot memory { 24*c66ec88fSEmmanuel Vadot device_type = "memory"; 25*c66ec88fSEmmanuel Vadot reg = <0x0 0x40000000>; // set by uboot 26*c66ec88fSEmmanuel Vadot }; 27*c66ec88fSEmmanuel Vadot 28*c66ec88fSEmmanuel Vadot lbc: localbus@fef05000 { 29*c66ec88fSEmmanuel Vadot reg = <0xfef05000 0x1000>; 30*c66ec88fSEmmanuel Vadot 31*c66ec88fSEmmanuel Vadot ranges = <0 0 0xff000000 0x01000000 // 16MB Boot flash 32*c66ec88fSEmmanuel Vadot 1 0 0xe8000000 0x08000000 // Paged Flash 0 33*c66ec88fSEmmanuel Vadot 2 0 0xe0000000 0x08000000 // Paged Flash 1 34*c66ec88fSEmmanuel Vadot 3 0 0xfc100000 0x00020000 // NVRAM 35*c66ec88fSEmmanuel Vadot 4 0 0xfc000000 0x00008000 // FPGA 36*c66ec88fSEmmanuel Vadot 5 0 0xfc008000 0x00008000 // AFIX FPGA 37*c66ec88fSEmmanuel Vadot 6 0 0xfd000000 0x00800000 // IO FPGA (8-bit) 38*c66ec88fSEmmanuel Vadot 7 0 0xfd800000 0x00800000>; // IO FPGA (32-bit) 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel Vadot /* flash@0,0 is a mirror of part of the memory in flash@1,0 41*c66ec88fSEmmanuel Vadot flash@0,0 { 42*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-firmware-mirror", "cfi-flash"; 43*c66ec88fSEmmanuel Vadot reg = <0x0 0x0 0x1000000>; 44*c66ec88fSEmmanuel Vadot bank-width = <4>; 45*c66ec88fSEmmanuel Vadot device-width = <2>; 46*c66ec88fSEmmanuel Vadot #address-cells = <1>; 47*c66ec88fSEmmanuel Vadot #size-cells = <1>; 48*c66ec88fSEmmanuel Vadot partition@0 { 49*c66ec88fSEmmanuel Vadot label = "firmware"; 50*c66ec88fSEmmanuel Vadot reg = <0x0 0x1000000>; 51*c66ec88fSEmmanuel Vadot read-only; 52*c66ec88fSEmmanuel Vadot }; 53*c66ec88fSEmmanuel Vadot }; 54*c66ec88fSEmmanuel Vadot */ 55*c66ec88fSEmmanuel Vadot 56*c66ec88fSEmmanuel Vadot flash@1,0 { 57*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-paged-flash", "cfi-flash"; 58*c66ec88fSEmmanuel Vadot reg = <0x1 0x0 0x8000000>; 59*c66ec88fSEmmanuel Vadot bank-width = <4>; 60*c66ec88fSEmmanuel Vadot device-width = <2>; 61*c66ec88fSEmmanuel Vadot #address-cells = <1>; 62*c66ec88fSEmmanuel Vadot #size-cells = <1>; 63*c66ec88fSEmmanuel Vadot partition@0 { 64*c66ec88fSEmmanuel Vadot label = "user"; 65*c66ec88fSEmmanuel Vadot reg = <0x0 0x7800000>; 66*c66ec88fSEmmanuel Vadot }; 67*c66ec88fSEmmanuel Vadot partition@7800000 { 68*c66ec88fSEmmanuel Vadot label = "firmware"; 69*c66ec88fSEmmanuel Vadot reg = <0x7800000 0x800000>; 70*c66ec88fSEmmanuel Vadot read-only; 71*c66ec88fSEmmanuel Vadot }; 72*c66ec88fSEmmanuel Vadot }; 73*c66ec88fSEmmanuel Vadot 74*c66ec88fSEmmanuel Vadot nvram@3,0 { 75*c66ec88fSEmmanuel Vadot device_type = "nvram"; 76*c66ec88fSEmmanuel Vadot compatible = "simtek,stk14ca8"; 77*c66ec88fSEmmanuel Vadot reg = <0x3 0x0 0x20000>; 78*c66ec88fSEmmanuel Vadot }; 79*c66ec88fSEmmanuel Vadot 80*c66ec88fSEmmanuel Vadot fpga@4,0 { 81*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-fpga-regs"; 82*c66ec88fSEmmanuel Vadot reg = <0x4 0x0 0x40>; 83*c66ec88fSEmmanuel Vadot }; 84*c66ec88fSEmmanuel Vadot 85*c66ec88fSEmmanuel Vadot wdt@4,2000 { 86*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-fpga-wdt", "gef,fpga-wdt-1.00", 87*c66ec88fSEmmanuel Vadot "gef,fpga-wdt"; 88*c66ec88fSEmmanuel Vadot reg = <0x4 0x2000 0x8>; 89*c66ec88fSEmmanuel Vadot interrupts = <0x1a 0x4>; 90*c66ec88fSEmmanuel Vadot interrupt-parent = <&gef_pic>; 91*c66ec88fSEmmanuel Vadot }; 92*c66ec88fSEmmanuel Vadot /* Second watchdog available, driver currently supports one. 93*c66ec88fSEmmanuel Vadot wdt@4,2010 { 94*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-fpga-wdt", "gef,fpga-wdt-1.00", 95*c66ec88fSEmmanuel Vadot "gef,fpga-wdt"; 96*c66ec88fSEmmanuel Vadot reg = <0x4 0x2010 0x8>; 97*c66ec88fSEmmanuel Vadot interrupts = <0x1b 0x4>; 98*c66ec88fSEmmanuel Vadot interrupt-parent = <&gef_pic>; 99*c66ec88fSEmmanuel Vadot }; 100*c66ec88fSEmmanuel Vadot */ 101*c66ec88fSEmmanuel Vadot gef_pic: pic@4,4000 { 102*c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 103*c66ec88fSEmmanuel Vadot interrupt-controller; 104*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-fpga-pic", "gef,fpga-pic-1.00"; 105*c66ec88fSEmmanuel Vadot reg = <0x4 0x4000 0x20>; 106*c66ec88fSEmmanuel Vadot interrupts = <0x8 0x9 0 0>; 107*c66ec88fSEmmanuel Vadot 108*c66ec88fSEmmanuel Vadot }; 109*c66ec88fSEmmanuel Vadot gef_gpio: gpio@7,14000 { 110*c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 111*c66ec88fSEmmanuel Vadot compatible = "gef,ppc9a-gpio", "gef,sbc610-gpio"; 112*c66ec88fSEmmanuel Vadot reg = <0x7 0x14000 0x24>; 113*c66ec88fSEmmanuel Vadot gpio-controller; 114*c66ec88fSEmmanuel Vadot }; 115*c66ec88fSEmmanuel Vadot }; 116*c66ec88fSEmmanuel Vadot 117*c66ec88fSEmmanuel Vadot soc: soc@fef00000 { 118*c66ec88fSEmmanuel Vadot ranges = <0x0 0xfef00000 0x00100000>; 119*c66ec88fSEmmanuel Vadot 120*c66ec88fSEmmanuel Vadot i2c@3000 { 121*c66ec88fSEmmanuel Vadot hwmon@48 { 122*c66ec88fSEmmanuel Vadot compatible = "national,lm92"; 123*c66ec88fSEmmanuel Vadot reg = <0x48>; 124*c66ec88fSEmmanuel Vadot }; 125*c66ec88fSEmmanuel Vadot 126*c66ec88fSEmmanuel Vadot hwmon@4c { 127*c66ec88fSEmmanuel Vadot compatible = "adi,adt7461"; 128*c66ec88fSEmmanuel Vadot reg = <0x4c>; 129*c66ec88fSEmmanuel Vadot }; 130*c66ec88fSEmmanuel Vadot 131*c66ec88fSEmmanuel Vadot rtc@51 { 132*c66ec88fSEmmanuel Vadot compatible = "epson,rx8581"; 133*c66ec88fSEmmanuel Vadot reg = <0x00000051>; 134*c66ec88fSEmmanuel Vadot }; 135*c66ec88fSEmmanuel Vadot 136*c66ec88fSEmmanuel Vadot eti@6b { 137*c66ec88fSEmmanuel Vadot compatible = "dallas,ds1682"; 138*c66ec88fSEmmanuel Vadot reg = <0x6b>; 139*c66ec88fSEmmanuel Vadot }; 140*c66ec88fSEmmanuel Vadot }; 141*c66ec88fSEmmanuel Vadot 142*c66ec88fSEmmanuel Vadot enet0: ethernet@24000 { 143*c66ec88fSEmmanuel Vadot tbi-handle = <&tbi0>; 144*c66ec88fSEmmanuel Vadot phy-handle = <&phy0>; 145*c66ec88fSEmmanuel Vadot phy-connection-type = "gmii"; 146*c66ec88fSEmmanuel Vadot }; 147*c66ec88fSEmmanuel Vadot 148*c66ec88fSEmmanuel Vadot mdio@24520 { 149*c66ec88fSEmmanuel Vadot phy0: ethernet-phy@0 { 150*c66ec88fSEmmanuel Vadot interrupt-parent = <&gef_pic>; 151*c66ec88fSEmmanuel Vadot interrupts = <0x9 0x4>; 152*c66ec88fSEmmanuel Vadot reg = <1>; 153*c66ec88fSEmmanuel Vadot }; 154*c66ec88fSEmmanuel Vadot phy2: ethernet-phy@2 { 155*c66ec88fSEmmanuel Vadot interrupt-parent = <&gef_pic>; 156*c66ec88fSEmmanuel Vadot interrupts = <0x8 0x4>; 157*c66ec88fSEmmanuel Vadot reg = <3>; 158*c66ec88fSEmmanuel Vadot }; 159*c66ec88fSEmmanuel Vadot tbi0: tbi-phy@11 { 160*c66ec88fSEmmanuel Vadot reg = <0x11>; 161*c66ec88fSEmmanuel Vadot device_type = "tbi-phy"; 162*c66ec88fSEmmanuel Vadot }; 163*c66ec88fSEmmanuel Vadot }; 164*c66ec88fSEmmanuel Vadot 165*c66ec88fSEmmanuel Vadot enet1: ethernet@26000 { 166*c66ec88fSEmmanuel Vadot tbi-handle = <&tbi2>; 167*c66ec88fSEmmanuel Vadot phy-handle = <&phy2>; 168*c66ec88fSEmmanuel Vadot phy-connection-type = "gmii"; 169*c66ec88fSEmmanuel Vadot }; 170*c66ec88fSEmmanuel Vadot 171*c66ec88fSEmmanuel Vadot mdio@26520 { 172*c66ec88fSEmmanuel Vadot tbi2: tbi-phy@11 { 173*c66ec88fSEmmanuel Vadot reg = <0x11>; 174*c66ec88fSEmmanuel Vadot device_type = "tbi-phy"; 175*c66ec88fSEmmanuel Vadot }; 176*c66ec88fSEmmanuel Vadot }; 177*c66ec88fSEmmanuel Vadot 178*c66ec88fSEmmanuel Vadot enet2: ethernet@25000 { 179*c66ec88fSEmmanuel Vadot status = "disabled"; 180*c66ec88fSEmmanuel Vadot }; 181*c66ec88fSEmmanuel Vadot 182*c66ec88fSEmmanuel Vadot mdio@25520 { 183*c66ec88fSEmmanuel Vadot status = "disabled"; 184*c66ec88fSEmmanuel Vadot }; 185*c66ec88fSEmmanuel Vadot 186*c66ec88fSEmmanuel Vadot enet3: ethernet@27000 { 187*c66ec88fSEmmanuel Vadot status = "disabled"; 188*c66ec88fSEmmanuel Vadot }; 189*c66ec88fSEmmanuel Vadot 190*c66ec88fSEmmanuel Vadot mdio@27520 { 191*c66ec88fSEmmanuel Vadot status = "disabled"; 192*c66ec88fSEmmanuel Vadot }; 193*c66ec88fSEmmanuel Vadot }; 194*c66ec88fSEmmanuel Vadot 195*c66ec88fSEmmanuel Vadot pci0: pcie@fef08000 { 196*c66ec88fSEmmanuel Vadot reg = <0xfef08000 0x1000>; 197*c66ec88fSEmmanuel Vadot ranges = <0x02000000 0x0 0x80000000 0x80000000 0x0 0x40000000 198*c66ec88fSEmmanuel Vadot 0x01000000 0x0 0x00000000 0xfe000000 0x0 0x00400000>; 199*c66ec88fSEmmanuel Vadot 200*c66ec88fSEmmanuel Vadot pcie@0 { 201*c66ec88fSEmmanuel Vadot ranges = <0x02000000 0x0 0x80000000 202*c66ec88fSEmmanuel Vadot 0x02000000 0x0 0x80000000 203*c66ec88fSEmmanuel Vadot 0x0 0x40000000 204*c66ec88fSEmmanuel Vadot 205*c66ec88fSEmmanuel Vadot 0x01000000 0x0 0x00000000 206*c66ec88fSEmmanuel Vadot 0x01000000 0x0 0x00000000 207*c66ec88fSEmmanuel Vadot 0x0 0x00400000>; 208*c66ec88fSEmmanuel Vadot }; 209*c66ec88fSEmmanuel Vadot }; 210*c66ec88fSEmmanuel Vadot 211*c66ec88fSEmmanuel Vadot pci1: pcie@fef09000 { 212*c66ec88fSEmmanuel Vadot status = "disabled"; 213*c66ec88fSEmmanuel Vadot }; 214*c66ec88fSEmmanuel Vadot}; 215*c66ec88fSEmmanuel Vadot 216*c66ec88fSEmmanuel Vadot/include/ "mpc8641si-post.dtsi" 217