18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * base MPC5200b Device Tree Source 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2010 SecretLab 68c2ecf20Sopenharmony_ci * Grant Likely <grant@secretlab.ca> 78c2ecf20Sopenharmony_ci * John Bonesio <bones@secretlab.ca> 88c2ecf20Sopenharmony_ci */ 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ci/dts-v1/; 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci/ { 138c2ecf20Sopenharmony_ci model = "fsl,mpc5200b"; 148c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b"; 158c2ecf20Sopenharmony_ci #address-cells = <1>; 168c2ecf20Sopenharmony_ci #size-cells = <1>; 178c2ecf20Sopenharmony_ci interrupt-parent = <&mpc5200_pic>; 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ci cpus { 208c2ecf20Sopenharmony_ci #address-cells = <1>; 218c2ecf20Sopenharmony_ci #size-cells = <0>; 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci powerpc: PowerPC,5200@0 { 248c2ecf20Sopenharmony_ci device_type = "cpu"; 258c2ecf20Sopenharmony_ci reg = <0>; 268c2ecf20Sopenharmony_ci d-cache-line-size = <32>; 278c2ecf20Sopenharmony_ci i-cache-line-size = <32>; 288c2ecf20Sopenharmony_ci d-cache-size = <0x4000>; // L1, 16K 298c2ecf20Sopenharmony_ci i-cache-size = <0x4000>; // L1, 16K 308c2ecf20Sopenharmony_ci timebase-frequency = <0>; // from bootloader 318c2ecf20Sopenharmony_ci bus-frequency = <0>; // from bootloader 328c2ecf20Sopenharmony_ci clock-frequency = <0>; // from bootloader 338c2ecf20Sopenharmony_ci }; 348c2ecf20Sopenharmony_ci }; 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci memory: memory@0 { 378c2ecf20Sopenharmony_ci device_type = "memory"; 388c2ecf20Sopenharmony_ci reg = <0x00000000 0x04000000>; // 64MB 398c2ecf20Sopenharmony_ci }; 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ci soc: soc5200@f0000000 { 428c2ecf20Sopenharmony_ci #address-cells = <1>; 438c2ecf20Sopenharmony_ci #size-cells = <1>; 448c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-immr"; 458c2ecf20Sopenharmony_ci ranges = <0 0xf0000000 0x0000c000>; 468c2ecf20Sopenharmony_ci reg = <0xf0000000 0x00000100>; 478c2ecf20Sopenharmony_ci bus-frequency = <0>; // from bootloader 488c2ecf20Sopenharmony_ci system-frequency = <0>; // from bootloader 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci cdm@200 { 518c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-cdm","fsl,mpc5200-cdm"; 528c2ecf20Sopenharmony_ci reg = <0x200 0x38>; 538c2ecf20Sopenharmony_ci }; 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_ci mpc5200_pic: interrupt-controller@500 { 568c2ecf20Sopenharmony_ci // 5200 interrupts are encoded into two levels; 578c2ecf20Sopenharmony_ci interrupt-controller; 588c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 598c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-pic","fsl,mpc5200-pic"; 608c2ecf20Sopenharmony_ci reg = <0x500 0x80>; 618c2ecf20Sopenharmony_ci }; 628c2ecf20Sopenharmony_ci 638c2ecf20Sopenharmony_ci gpt0: timer@600 { // General Purpose Timer 648c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 658c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 668c2ecf20Sopenharmony_ci reg = <0x600 0x10>; 678c2ecf20Sopenharmony_ci interrupts = <1 9 0>; 688c2ecf20Sopenharmony_ci // add 'fsl,has-wdt' to enable watchdog 698c2ecf20Sopenharmony_ci }; 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci gpt1: timer@610 { // General Purpose Timer 728c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 738c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 748c2ecf20Sopenharmony_ci reg = <0x610 0x10>; 758c2ecf20Sopenharmony_ci interrupts = <1 10 0>; 768c2ecf20Sopenharmony_ci }; 778c2ecf20Sopenharmony_ci 788c2ecf20Sopenharmony_ci gpt2: timer@620 { // General Purpose Timer 798c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 808c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 818c2ecf20Sopenharmony_ci reg = <0x620 0x10>; 828c2ecf20Sopenharmony_ci interrupts = <1 11 0>; 838c2ecf20Sopenharmony_ci }; 848c2ecf20Sopenharmony_ci 858c2ecf20Sopenharmony_ci gpt3: timer@630 { // General Purpose Timer 868c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 878c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 888c2ecf20Sopenharmony_ci reg = <0x630 0x10>; 898c2ecf20Sopenharmony_ci interrupts = <1 12 0>; 908c2ecf20Sopenharmony_ci }; 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_ci gpt4: timer@640 { // General Purpose Timer 938c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 948c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 958c2ecf20Sopenharmony_ci reg = <0x640 0x10>; 968c2ecf20Sopenharmony_ci interrupts = <1 13 0>; 978c2ecf20Sopenharmony_ci }; 988c2ecf20Sopenharmony_ci 998c2ecf20Sopenharmony_ci gpt5: timer@650 { // General Purpose Timer 1008c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 1018c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 1028c2ecf20Sopenharmony_ci reg = <0x650 0x10>; 1038c2ecf20Sopenharmony_ci interrupts = <1 14 0>; 1048c2ecf20Sopenharmony_ci }; 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ci gpt6: timer@660 { // General Purpose Timer 1078c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 1088c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 1098c2ecf20Sopenharmony_ci reg = <0x660 0x10>; 1108c2ecf20Sopenharmony_ci interrupts = <1 15 0>; 1118c2ecf20Sopenharmony_ci }; 1128c2ecf20Sopenharmony_ci 1138c2ecf20Sopenharmony_ci gpt7: timer@670 { // General Purpose Timer 1148c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt"; 1158c2ecf20Sopenharmony_ci #gpio-cells = <2>; // Add 'gpio-controller;' to enable gpio mode 1168c2ecf20Sopenharmony_ci reg = <0x670 0x10>; 1178c2ecf20Sopenharmony_ci interrupts = <1 16 0>; 1188c2ecf20Sopenharmony_ci }; 1198c2ecf20Sopenharmony_ci 1208c2ecf20Sopenharmony_ci rtc@800 { // Real time clock 1218c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-rtc","fsl,mpc5200-rtc"; 1228c2ecf20Sopenharmony_ci reg = <0x800 0x100>; 1238c2ecf20Sopenharmony_ci interrupts = <1 5 0 1 6 0>; 1248c2ecf20Sopenharmony_ci }; 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci can@900 { 1278c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-mscan","fsl,mpc5200-mscan"; 1288c2ecf20Sopenharmony_ci interrupts = <2 17 0>; 1298c2ecf20Sopenharmony_ci reg = <0x900 0x80>; 1308c2ecf20Sopenharmony_ci }; 1318c2ecf20Sopenharmony_ci 1328c2ecf20Sopenharmony_ci can@980 { 1338c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-mscan","fsl,mpc5200-mscan"; 1348c2ecf20Sopenharmony_ci interrupts = <2 18 0>; 1358c2ecf20Sopenharmony_ci reg = <0x980 0x80>; 1368c2ecf20Sopenharmony_ci }; 1378c2ecf20Sopenharmony_ci 1388c2ecf20Sopenharmony_ci gpio_simple: gpio@b00 { 1398c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpio","fsl,mpc5200-gpio"; 1408c2ecf20Sopenharmony_ci reg = <0xb00 0x40>; 1418c2ecf20Sopenharmony_ci interrupts = <1 7 0>; 1428c2ecf20Sopenharmony_ci gpio-controller; 1438c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci gpio_wkup: gpio@c00 { 1478c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-gpio-wkup","fsl,mpc5200-gpio-wkup"; 1488c2ecf20Sopenharmony_ci reg = <0xc00 0x40>; 1498c2ecf20Sopenharmony_ci interrupts = <1 8 0 0 3 0>; 1508c2ecf20Sopenharmony_ci gpio-controller; 1518c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1528c2ecf20Sopenharmony_ci }; 1538c2ecf20Sopenharmony_ci 1548c2ecf20Sopenharmony_ci spi@f00 { 1558c2ecf20Sopenharmony_ci #address-cells = <1>; 1568c2ecf20Sopenharmony_ci #size-cells = <0>; 1578c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-spi","fsl,mpc5200-spi"; 1588c2ecf20Sopenharmony_ci reg = <0xf00 0x20>; 1598c2ecf20Sopenharmony_ci interrupts = <2 13 0 2 14 0>; 1608c2ecf20Sopenharmony_ci }; 1618c2ecf20Sopenharmony_ci 1628c2ecf20Sopenharmony_ci usb: usb@1000 { 1638c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-ohci","fsl,mpc5200-ohci","ohci-be"; 1648c2ecf20Sopenharmony_ci reg = <0x1000 0xff>; 1658c2ecf20Sopenharmony_ci interrupts = <2 6 0>; 1668c2ecf20Sopenharmony_ci }; 1678c2ecf20Sopenharmony_ci 1688c2ecf20Sopenharmony_ci dma-controller@1200 { 1698c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-bestcomm","fsl,mpc5200-bestcomm"; 1708c2ecf20Sopenharmony_ci reg = <0x1200 0x80>; 1718c2ecf20Sopenharmony_ci interrupts = <3 0 0 3 1 0 3 2 0 3 3 0 1728c2ecf20Sopenharmony_ci 3 4 0 3 5 0 3 6 0 3 7 0 1738c2ecf20Sopenharmony_ci 3 8 0 3 9 0 3 10 0 3 11 0 1748c2ecf20Sopenharmony_ci 3 12 0 3 13 0 3 14 0 3 15 0>; 1758c2ecf20Sopenharmony_ci }; 1768c2ecf20Sopenharmony_ci 1778c2ecf20Sopenharmony_ci xlb@1f00 { 1788c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-xlb","fsl,mpc5200-xlb"; 1798c2ecf20Sopenharmony_ci reg = <0x1f00 0x100>; 1808c2ecf20Sopenharmony_ci }; 1818c2ecf20Sopenharmony_ci 1828c2ecf20Sopenharmony_ci psc1: psc@2000 { // PSC1 1838c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 1848c2ecf20Sopenharmony_ci reg = <0x2000 0x100>; 1858c2ecf20Sopenharmony_ci interrupts = <2 1 0>; 1868c2ecf20Sopenharmony_ci }; 1878c2ecf20Sopenharmony_ci 1888c2ecf20Sopenharmony_ci psc2: psc@2200 { // PSC2 1898c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 1908c2ecf20Sopenharmony_ci reg = <0x2200 0x100>; 1918c2ecf20Sopenharmony_ci interrupts = <2 2 0>; 1928c2ecf20Sopenharmony_ci }; 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_ci psc3: psc@2400 { // PSC3 1958c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 1968c2ecf20Sopenharmony_ci reg = <0x2400 0x100>; 1978c2ecf20Sopenharmony_ci interrupts = <2 3 0>; 1988c2ecf20Sopenharmony_ci }; 1998c2ecf20Sopenharmony_ci 2008c2ecf20Sopenharmony_ci psc4: psc@2600 { // PSC4 2018c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 2028c2ecf20Sopenharmony_ci reg = <0x2600 0x100>; 2038c2ecf20Sopenharmony_ci interrupts = <2 11 0>; 2048c2ecf20Sopenharmony_ci }; 2058c2ecf20Sopenharmony_ci 2068c2ecf20Sopenharmony_ci psc5: psc@2800 { // PSC5 2078c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 2088c2ecf20Sopenharmony_ci reg = <0x2800 0x100>; 2098c2ecf20Sopenharmony_ci interrupts = <2 12 0>; 2108c2ecf20Sopenharmony_ci }; 2118c2ecf20Sopenharmony_ci 2128c2ecf20Sopenharmony_ci psc6: psc@2c00 { // PSC6 2138c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-psc","fsl,mpc5200-psc"; 2148c2ecf20Sopenharmony_ci reg = <0x2c00 0x100>; 2158c2ecf20Sopenharmony_ci interrupts = <2 4 0>; 2168c2ecf20Sopenharmony_ci }; 2178c2ecf20Sopenharmony_ci 2188c2ecf20Sopenharmony_ci eth0: ethernet@3000 { 2198c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-fec","fsl,mpc5200-fec"; 2208c2ecf20Sopenharmony_ci reg = <0x3000 0x400>; 2218c2ecf20Sopenharmony_ci local-mac-address = [ 00 00 00 00 00 00 ]; 2228c2ecf20Sopenharmony_ci interrupts = <2 5 0>; 2238c2ecf20Sopenharmony_ci }; 2248c2ecf20Sopenharmony_ci 2258c2ecf20Sopenharmony_ci mdio@3000 { 2268c2ecf20Sopenharmony_ci #address-cells = <1>; 2278c2ecf20Sopenharmony_ci #size-cells = <0>; 2288c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-mdio","fsl,mpc5200-mdio"; 2298c2ecf20Sopenharmony_ci reg = <0x3000 0x400>; // fec range, since we need to setup fec interrupts 2308c2ecf20Sopenharmony_ci interrupts = <2 5 0>; // these are for "mii command finished", not link changes & co. 2318c2ecf20Sopenharmony_ci }; 2328c2ecf20Sopenharmony_ci 2338c2ecf20Sopenharmony_ci ata@3a00 { 2348c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-ata","fsl,mpc5200-ata"; 2358c2ecf20Sopenharmony_ci reg = <0x3a00 0x100>; 2368c2ecf20Sopenharmony_ci interrupts = <2 7 0>; 2378c2ecf20Sopenharmony_ci }; 2388c2ecf20Sopenharmony_ci 2398c2ecf20Sopenharmony_ci sclpc@3c00 { 2408c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200-lpbfifo"; 2418c2ecf20Sopenharmony_ci reg = <0x3c00 0x60>; 2428c2ecf20Sopenharmony_ci interrupts = <2 23 0>; 2438c2ecf20Sopenharmony_ci }; 2448c2ecf20Sopenharmony_ci 2458c2ecf20Sopenharmony_ci i2c@3d00 { 2468c2ecf20Sopenharmony_ci #address-cells = <1>; 2478c2ecf20Sopenharmony_ci #size-cells = <0>; 2488c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c"; 2498c2ecf20Sopenharmony_ci reg = <0x3d00 0x40>; 2508c2ecf20Sopenharmony_ci interrupts = <2 15 0>; 2518c2ecf20Sopenharmony_ci }; 2528c2ecf20Sopenharmony_ci 2538c2ecf20Sopenharmony_ci i2c@3d40 { 2548c2ecf20Sopenharmony_ci #address-cells = <1>; 2558c2ecf20Sopenharmony_ci #size-cells = <0>; 2568c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c"; 2578c2ecf20Sopenharmony_ci reg = <0x3d40 0x40>; 2588c2ecf20Sopenharmony_ci interrupts = <2 16 0>; 2598c2ecf20Sopenharmony_ci }; 2608c2ecf20Sopenharmony_ci 2618c2ecf20Sopenharmony_ci sram@8000 { 2628c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-sram","fsl,mpc5200-sram"; 2638c2ecf20Sopenharmony_ci reg = <0x8000 0x4000>; 2648c2ecf20Sopenharmony_ci }; 2658c2ecf20Sopenharmony_ci }; 2668c2ecf20Sopenharmony_ci 2678c2ecf20Sopenharmony_ci pci: pci@f0000d00 { 2688c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 2698c2ecf20Sopenharmony_ci #size-cells = <2>; 2708c2ecf20Sopenharmony_ci #address-cells = <3>; 2718c2ecf20Sopenharmony_ci device_type = "pci"; 2728c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-pci","fsl,mpc5200-pci"; 2738c2ecf20Sopenharmony_ci reg = <0xf0000d00 0x100>; 2748c2ecf20Sopenharmony_ci // interrupt-map-mask = need to add 2758c2ecf20Sopenharmony_ci // interrupt-map = need to add 2768c2ecf20Sopenharmony_ci clock-frequency = <0>; // From boot loader 2778c2ecf20Sopenharmony_ci interrupts = <2 8 0 2 9 0 2 10 0>; 2788c2ecf20Sopenharmony_ci bus-range = <0 0>; 2798c2ecf20Sopenharmony_ci // ranges = need to add 2808c2ecf20Sopenharmony_ci }; 2818c2ecf20Sopenharmony_ci 2828c2ecf20Sopenharmony_ci localbus: localbus { 2838c2ecf20Sopenharmony_ci compatible = "fsl,mpc5200b-lpb","fsl,mpc5200-lpb","simple-bus"; 2848c2ecf20Sopenharmony_ci #address-cells = <2>; 2858c2ecf20Sopenharmony_ci #size-cells = <1>; 2868c2ecf20Sopenharmony_ci ranges = <0 0 0xfc000000 0x2000000>; 2878c2ecf20Sopenharmony_ci }; 2888c2ecf20Sopenharmony_ci}; 289