18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Device Tree for the MGCOGE plattform from keymile 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright 2008 DENX Software Engineering GmbH 68c2ecf20Sopenharmony_ci * Heiko Schocher <hs@denx.de> 78c2ecf20Sopenharmony_ci */ 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci/dts-v1/; 108c2ecf20Sopenharmony_ci/ { 118c2ecf20Sopenharmony_ci model = "MGCOGE"; 128c2ecf20Sopenharmony_ci compatible = "keymile,km82xx"; 138c2ecf20Sopenharmony_ci #address-cells = <1>; 148c2ecf20Sopenharmony_ci #size-cells = <1>; 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ci aliases { 178c2ecf20Sopenharmony_ci ethernet0 = ð0; 188c2ecf20Sopenharmony_ci serial0 = &smc2; 198c2ecf20Sopenharmony_ci }; 208c2ecf20Sopenharmony_ci 218c2ecf20Sopenharmony_ci cpus { 228c2ecf20Sopenharmony_ci #address-cells = <1>; 238c2ecf20Sopenharmony_ci #size-cells = <0>; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci PowerPC,8247@0 { 268c2ecf20Sopenharmony_ci device_type = "cpu"; 278c2ecf20Sopenharmony_ci reg = <0>; 288c2ecf20Sopenharmony_ci d-cache-line-size = <32>; 298c2ecf20Sopenharmony_ci i-cache-line-size = <32>; 308c2ecf20Sopenharmony_ci d-cache-size = <16384>; 318c2ecf20Sopenharmony_ci i-cache-size = <16384>; 328c2ecf20Sopenharmony_ci timebase-frequency = <0>; /* Filled in by U-Boot */ 338c2ecf20Sopenharmony_ci clock-frequency = <0>; /* Filled in by U-Boot */ 348c2ecf20Sopenharmony_ci bus-frequency = <0>; /* Filled in by U-Boot */ 358c2ecf20Sopenharmony_ci }; 368c2ecf20Sopenharmony_ci }; 378c2ecf20Sopenharmony_ci 388c2ecf20Sopenharmony_ci localbus@f0010100 { 398c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-localbus", 408c2ecf20Sopenharmony_ci "fsl,pq2-localbus", 418c2ecf20Sopenharmony_ci "simple-bus"; 428c2ecf20Sopenharmony_ci #address-cells = <2>; 438c2ecf20Sopenharmony_ci #size-cells = <1>; 448c2ecf20Sopenharmony_ci reg = <0xf0010100 0x40>; 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci ranges = <0 0 0xfe000000 0x00400000 478c2ecf20Sopenharmony_ci 1 0 0x30000000 0x00010000 488c2ecf20Sopenharmony_ci 2 0 0x40000000 0x00010000 498c2ecf20Sopenharmony_ci 5 0 0x50000000 0x04000000 508c2ecf20Sopenharmony_ci >; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci flash@0,0 { 538c2ecf20Sopenharmony_ci compatible = "cfi-flash"; 548c2ecf20Sopenharmony_ci reg = <0 0x0 0x400000>; 558c2ecf20Sopenharmony_ci #address-cells = <1>; 568c2ecf20Sopenharmony_ci #size-cells = <1>; 578c2ecf20Sopenharmony_ci bank-width = <1>; 588c2ecf20Sopenharmony_ci device-width = <1>; 598c2ecf20Sopenharmony_ci partition@0 { 608c2ecf20Sopenharmony_ci label = "u-boot"; 618c2ecf20Sopenharmony_ci reg = <0x00000 0xC0000>; 628c2ecf20Sopenharmony_ci }; 638c2ecf20Sopenharmony_ci partition@1 { 648c2ecf20Sopenharmony_ci label = "env"; 658c2ecf20Sopenharmony_ci reg = <0xC0000 0x20000>; 668c2ecf20Sopenharmony_ci }; 678c2ecf20Sopenharmony_ci partition@2 { 688c2ecf20Sopenharmony_ci label = "envred"; 698c2ecf20Sopenharmony_ci reg = <0xE0000 0x20000>; 708c2ecf20Sopenharmony_ci }; 718c2ecf20Sopenharmony_ci partition@3 { 728c2ecf20Sopenharmony_ci label = "free"; 738c2ecf20Sopenharmony_ci reg = <0x100000 0x300000>; 748c2ecf20Sopenharmony_ci }; 758c2ecf20Sopenharmony_ci }; 768c2ecf20Sopenharmony_ci 778c2ecf20Sopenharmony_ci flash@5,0 { 788c2ecf20Sopenharmony_ci compatible = "cfi-flash"; 798c2ecf20Sopenharmony_ci reg = <5 0x00000000 0x02000000 808c2ecf20Sopenharmony_ci 5 0x02000000 0x02000000>; 818c2ecf20Sopenharmony_ci #address-cells = <1>; 828c2ecf20Sopenharmony_ci #size-cells = <1>; 838c2ecf20Sopenharmony_ci bank-width = <2>; 848c2ecf20Sopenharmony_ci partition@app { /* 64 MBytes */ 858c2ecf20Sopenharmony_ci label = "ubi0"; 868c2ecf20Sopenharmony_ci reg = <0x00000000 0x04000000>; 878c2ecf20Sopenharmony_ci }; 888c2ecf20Sopenharmony_ci }; 898c2ecf20Sopenharmony_ci }; 908c2ecf20Sopenharmony_ci 918c2ecf20Sopenharmony_ci memory { 928c2ecf20Sopenharmony_ci device_type = "memory"; 938c2ecf20Sopenharmony_ci reg = <0 0>; /* Filled in by U-Boot */ 948c2ecf20Sopenharmony_ci }; 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ci soc@f0000000 { 978c2ecf20Sopenharmony_ci #address-cells = <1>; 988c2ecf20Sopenharmony_ci #size-cells = <1>; 998c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-immr", "fsl,pq2-soc", "simple-bus"; 1008c2ecf20Sopenharmony_ci ranges = <0x00000000 0xf0000000 0x00053000>; 1018c2ecf20Sopenharmony_ci 1028c2ecf20Sopenharmony_ci // Temporary until code stops depending on it. 1038c2ecf20Sopenharmony_ci device_type = "soc"; 1048c2ecf20Sopenharmony_ci 1058c2ecf20Sopenharmony_ci cpm@119c0 { 1068c2ecf20Sopenharmony_ci #address-cells = <1>; 1078c2ecf20Sopenharmony_ci #size-cells = <1>; 1088c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1098c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-cpm", "fsl,cpm2", 1108c2ecf20Sopenharmony_ci "simple-bus"; 1118c2ecf20Sopenharmony_ci reg = <0x119c0 0x30>; 1128c2ecf20Sopenharmony_ci ranges; 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ci muram { 1158c2ecf20Sopenharmony_ci compatible = "fsl,cpm-muram"; 1168c2ecf20Sopenharmony_ci #address-cells = <1>; 1178c2ecf20Sopenharmony_ci #size-cells = <1>; 1188c2ecf20Sopenharmony_ci ranges = <0 0 0x10000>; 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ci data@0 { 1218c2ecf20Sopenharmony_ci compatible = "fsl,cpm-muram-data"; 1228c2ecf20Sopenharmony_ci reg = <0x80 0x1f80 0x9800 0x800>; 1238c2ecf20Sopenharmony_ci }; 1248c2ecf20Sopenharmony_ci }; 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci brg@119f0 { 1278c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-brg", 1288c2ecf20Sopenharmony_ci "fsl,cpm2-brg", 1298c2ecf20Sopenharmony_ci "fsl,cpm-brg"; 1308c2ecf20Sopenharmony_ci reg = <0x119f0 0x10 0x115f0 0x10>; 1318c2ecf20Sopenharmony_ci }; 1328c2ecf20Sopenharmony_ci 1338c2ecf20Sopenharmony_ci /* Monitor port/SMC2 */ 1348c2ecf20Sopenharmony_ci smc2: serial@11a90 { 1358c2ecf20Sopenharmony_ci device_type = "serial"; 1368c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-smc-uart", 1378c2ecf20Sopenharmony_ci "fsl,cpm2-smc-uart"; 1388c2ecf20Sopenharmony_ci reg = <0x11a90 0x20 0x88fc 0x02>; 1398c2ecf20Sopenharmony_ci interrupts = <5 8>; 1408c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 1418c2ecf20Sopenharmony_ci fsl,cpm-brg = <2>; 1428c2ecf20Sopenharmony_ci fsl,cpm-command = <0x21200000>; 1438c2ecf20Sopenharmony_ci current-speed = <0>; /* Filled in by U-Boot */ 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci eth0: ethernet@11a60 { 1478c2ecf20Sopenharmony_ci device_type = "network"; 1488c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-scc-enet", 1498c2ecf20Sopenharmony_ci "fsl,cpm2-scc-enet"; 1508c2ecf20Sopenharmony_ci reg = <0x11a60 0x20 0x8300 0x100 0x11390 1>; 1518c2ecf20Sopenharmony_ci local-mac-address = [ 00 00 00 00 00 00 ]; /* Filled in by U-Boot */ 1528c2ecf20Sopenharmony_ci interrupts = <43 8>; 1538c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 1548c2ecf20Sopenharmony_ci linux,network-index = <0>; 1558c2ecf20Sopenharmony_ci fsl,cpm-command = <0xce00000>; 1568c2ecf20Sopenharmony_ci fixed-link = <0 0 10 0 0>; 1578c2ecf20Sopenharmony_ci }; 1588c2ecf20Sopenharmony_ci 1598c2ecf20Sopenharmony_ci i2c@11860 { 1608c2ecf20Sopenharmony_ci compatible = "fsl,mpc8272-i2c", 1618c2ecf20Sopenharmony_ci "fsl,cpm2-i2c"; 1628c2ecf20Sopenharmony_ci reg = <0x11860 0x20 0x8afc 0x2>; 1638c2ecf20Sopenharmony_ci interrupts = <1 8>; 1648c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 1658c2ecf20Sopenharmony_ci fsl,cpm-command = <0x29600000>; 1668c2ecf20Sopenharmony_ci #address-cells = <1>; 1678c2ecf20Sopenharmony_ci #size-cells = <0>; 1688c2ecf20Sopenharmony_ci }; 1698c2ecf20Sopenharmony_ci 1708c2ecf20Sopenharmony_ci mdio@10d40 { 1718c2ecf20Sopenharmony_ci compatible = "fsl,cpm2-mdio-bitbang"; 1728c2ecf20Sopenharmony_ci reg = <0x10d00 0x14>; 1738c2ecf20Sopenharmony_ci #address-cells = <1>; 1748c2ecf20Sopenharmony_ci #size-cells = <0>; 1758c2ecf20Sopenharmony_ci fsl,mdio-pin = <12>; 1768c2ecf20Sopenharmony_ci fsl,mdc-pin = <13>; 1778c2ecf20Sopenharmony_ci 1788c2ecf20Sopenharmony_ci phy0: ethernet-phy@0 { 1798c2ecf20Sopenharmony_ci reg = <0x0>; 1808c2ecf20Sopenharmony_ci }; 1818c2ecf20Sopenharmony_ci 1828c2ecf20Sopenharmony_ci phy1: ethernet-phy@1 { 1838c2ecf20Sopenharmony_ci reg = <0x1>; 1848c2ecf20Sopenharmony_ci }; 1858c2ecf20Sopenharmony_ci }; 1868c2ecf20Sopenharmony_ci 1878c2ecf20Sopenharmony_ci /* FCC1 management to switch */ 1888c2ecf20Sopenharmony_ci ethernet@11300 { 1898c2ecf20Sopenharmony_ci device_type = "network"; 1908c2ecf20Sopenharmony_ci compatible = "fsl,cpm2-fcc-enet"; 1918c2ecf20Sopenharmony_ci reg = <0x11300 0x20 0x8400 0x100 0x11390 0x1>; 1928c2ecf20Sopenharmony_ci local-mac-address = [ 00 01 02 03 04 07 ]; 1938c2ecf20Sopenharmony_ci interrupts = <32 8>; 1948c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 1958c2ecf20Sopenharmony_ci phy-handle = <&phy0>; 1968c2ecf20Sopenharmony_ci linux,network-index = <1>; 1978c2ecf20Sopenharmony_ci fsl,cpm-command = <0x12000300>; 1988c2ecf20Sopenharmony_ci }; 1998c2ecf20Sopenharmony_ci 2008c2ecf20Sopenharmony_ci /* FCC2 to redundant core unit over backplane */ 2018c2ecf20Sopenharmony_ci ethernet@11320 { 2028c2ecf20Sopenharmony_ci device_type = "network"; 2038c2ecf20Sopenharmony_ci compatible = "fsl,cpm2-fcc-enet"; 2048c2ecf20Sopenharmony_ci reg = <0x11320 0x20 0x8500 0x100 0x113b0 0x1>; 2058c2ecf20Sopenharmony_ci local-mac-address = [ 00 01 02 03 04 08 ]; 2068c2ecf20Sopenharmony_ci interrupts = <33 8>; 2078c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 2088c2ecf20Sopenharmony_ci phy-handle = <&phy1>; 2098c2ecf20Sopenharmony_ci linux,network-index = <2>; 2108c2ecf20Sopenharmony_ci fsl,cpm-command = <0x16200300>; 2118c2ecf20Sopenharmony_ci }; 2128c2ecf20Sopenharmony_ci 2138c2ecf20Sopenharmony_ci usb@11b60 { 2148c2ecf20Sopenharmony_ci compatible = "fsl,mpc8272-cpm-usb"; 2158c2ecf20Sopenharmony_ci mode = "peripheral"; 2168c2ecf20Sopenharmony_ci reg = <0x11b60 0x40 0x8b00 0x100>; 2178c2ecf20Sopenharmony_ci interrupts = <11 8>; 2188c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 2198c2ecf20Sopenharmony_ci usb-clock = <5>; 2208c2ecf20Sopenharmony_ci }; 2218c2ecf20Sopenharmony_ci spi@11aa0 { 2228c2ecf20Sopenharmony_ci cell-index = <0>; 2238c2ecf20Sopenharmony_ci compatible = "fsl,spi", "fsl,cpm2-spi"; 2248c2ecf20Sopenharmony_ci reg = <0x11a80 0x40 0x89fc 0x2>; 2258c2ecf20Sopenharmony_ci interrupts = <2 8>; 2268c2ecf20Sopenharmony_ci interrupt-parent = <&PIC>; 2278c2ecf20Sopenharmony_ci cs-gpios = < &cpm2_pio_d 19 0>; 2288c2ecf20Sopenharmony_ci #address-cells = <1>; 2298c2ecf20Sopenharmony_ci #size-cells = <0>; 2308c2ecf20Sopenharmony_ci ds3106@1 { 2318c2ecf20Sopenharmony_ci compatible = "gen,spidev"; 2328c2ecf20Sopenharmony_ci reg = <0>; 2338c2ecf20Sopenharmony_ci spi-max-frequency = <8000000>; 2348c2ecf20Sopenharmony_ci }; 2358c2ecf20Sopenharmony_ci }; 2368c2ecf20Sopenharmony_ci 2378c2ecf20Sopenharmony_ci }; 2388c2ecf20Sopenharmony_ci 2398c2ecf20Sopenharmony_ci cpm2_pio_d: gpio-controller@10d60 { 2408c2ecf20Sopenharmony_ci #gpio-cells = <2>; 2418c2ecf20Sopenharmony_ci compatible = "fsl,cpm2-pario-bank"; 2428c2ecf20Sopenharmony_ci reg = <0x10d60 0x14>; 2438c2ecf20Sopenharmony_ci gpio-controller; 2448c2ecf20Sopenharmony_ci }; 2458c2ecf20Sopenharmony_ci 2468c2ecf20Sopenharmony_ci cpm2_pio_c: gpio-controller@10d40 { 2478c2ecf20Sopenharmony_ci #gpio-cells = <2>; 2488c2ecf20Sopenharmony_ci compatible = "fsl,cpm2-pario-bank"; 2498c2ecf20Sopenharmony_ci reg = <0x10d40 0x14>; 2508c2ecf20Sopenharmony_ci gpio-controller; 2518c2ecf20Sopenharmony_ci }; 2528c2ecf20Sopenharmony_ci 2538c2ecf20Sopenharmony_ci PIC: interrupt-controller@10c00 { 2548c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 2558c2ecf20Sopenharmony_ci interrupt-controller; 2568c2ecf20Sopenharmony_ci reg = <0x10c00 0x80>; 2578c2ecf20Sopenharmony_ci compatible = "fsl,mpc8247-pic", "fsl,pq2-pic"; 2588c2ecf20Sopenharmony_ci }; 2598c2ecf20Sopenharmony_ci }; 2608c2ecf20Sopenharmony_ci}; 261