1c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later 2c66ec88fSEmmanuel Vadot/* 3c66ec88fSEmmanuel Vadot * Lite5200 board Device Tree Source 4c66ec88fSEmmanuel Vadot * 5c66ec88fSEmmanuel Vadot * Copyright 2006-2007 Secret Lab Technologies Ltd. 6c66ec88fSEmmanuel Vadot * Grant Likely <grant.likely@secretlab.ca> 7c66ec88fSEmmanuel Vadot */ 8c66ec88fSEmmanuel Vadot 9c66ec88fSEmmanuel Vadot/dts-v1/; 10c66ec88fSEmmanuel Vadot 11c66ec88fSEmmanuel Vadot/ { 12c66ec88fSEmmanuel Vadot model = "fsl,lite5200"; 13c66ec88fSEmmanuel Vadot compatible = "fsl,lite5200"; 14c66ec88fSEmmanuel Vadot #address-cells = <1>; 15c66ec88fSEmmanuel Vadot #size-cells = <1>; 16c66ec88fSEmmanuel Vadot interrupt-parent = <&mpc5200_pic>; 17c66ec88fSEmmanuel Vadot 18c66ec88fSEmmanuel Vadot cpus { 19c66ec88fSEmmanuel Vadot #address-cells = <1>; 20c66ec88fSEmmanuel Vadot #size-cells = <0>; 21c66ec88fSEmmanuel Vadot 22c66ec88fSEmmanuel Vadot PowerPC,5200@0 { 23c66ec88fSEmmanuel Vadot device_type = "cpu"; 24c66ec88fSEmmanuel Vadot reg = <0>; 25c66ec88fSEmmanuel Vadot d-cache-line-size = <32>; 26c66ec88fSEmmanuel Vadot i-cache-line-size = <32>; 27c66ec88fSEmmanuel Vadot d-cache-size = <0x4000>; // L1, 16K 28c66ec88fSEmmanuel Vadot i-cache-size = <0x4000>; // L1, 16K 29c66ec88fSEmmanuel Vadot timebase-frequency = <0>; // from bootloader 30c66ec88fSEmmanuel Vadot bus-frequency = <0>; // from bootloader 31c66ec88fSEmmanuel Vadot clock-frequency = <0>; // from bootloader 32c66ec88fSEmmanuel Vadot }; 33c66ec88fSEmmanuel Vadot }; 34c66ec88fSEmmanuel Vadot 35*8cc087a1SEmmanuel Vadot memory@0 { 36c66ec88fSEmmanuel Vadot device_type = "memory"; 37c66ec88fSEmmanuel Vadot reg = <0x00000000 0x04000000>; // 64MB 38c66ec88fSEmmanuel Vadot }; 39c66ec88fSEmmanuel Vadot 40c66ec88fSEmmanuel Vadot soc5200@f0000000 { 41c66ec88fSEmmanuel Vadot #address-cells = <1>; 42c66ec88fSEmmanuel Vadot #size-cells = <1>; 43c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-immr"; 44c66ec88fSEmmanuel Vadot ranges = <0 0xf0000000 0x0000c000>; 45c66ec88fSEmmanuel Vadot reg = <0xf0000000 0x00000100>; 46c66ec88fSEmmanuel Vadot bus-frequency = <0>; // from bootloader 47c66ec88fSEmmanuel Vadot system-frequency = <0>; // from bootloader 48c66ec88fSEmmanuel Vadot 49c66ec88fSEmmanuel Vadot cdm@200 { 50c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-cdm"; 51c66ec88fSEmmanuel Vadot reg = <0x200 0x38>; 52c66ec88fSEmmanuel Vadot }; 53c66ec88fSEmmanuel Vadot 54c66ec88fSEmmanuel Vadot mpc5200_pic: interrupt-controller@500 { 55c66ec88fSEmmanuel Vadot // 5200 interrupts are encoded into two levels; 56c66ec88fSEmmanuel Vadot interrupt-controller; 57c66ec88fSEmmanuel Vadot #interrupt-cells = <3>; 58c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-pic"; 59c66ec88fSEmmanuel Vadot reg = <0x500 0x80>; 60c66ec88fSEmmanuel Vadot }; 61c66ec88fSEmmanuel Vadot 62c66ec88fSEmmanuel Vadot timer@600 { // General Purpose Timer 63c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 64c66ec88fSEmmanuel Vadot reg = <0x600 0x10>; 65c66ec88fSEmmanuel Vadot interrupts = <1 9 0>; 66c66ec88fSEmmanuel Vadot fsl,has-wdt; 67c66ec88fSEmmanuel Vadot }; 68c66ec88fSEmmanuel Vadot 69c66ec88fSEmmanuel Vadot timer@610 { // General Purpose Timer 70c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 71c66ec88fSEmmanuel Vadot reg = <0x610 0x10>; 72c66ec88fSEmmanuel Vadot interrupts = <1 10 0>; 73c66ec88fSEmmanuel Vadot }; 74c66ec88fSEmmanuel Vadot 75c66ec88fSEmmanuel Vadot timer@620 { // General Purpose Timer 76c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 77c66ec88fSEmmanuel Vadot reg = <0x620 0x10>; 78c66ec88fSEmmanuel Vadot interrupts = <1 11 0>; 79c66ec88fSEmmanuel Vadot }; 80c66ec88fSEmmanuel Vadot 81c66ec88fSEmmanuel Vadot timer@630 { // General Purpose Timer 82c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 83c66ec88fSEmmanuel Vadot reg = <0x630 0x10>; 84c66ec88fSEmmanuel Vadot interrupts = <1 12 0>; 85c66ec88fSEmmanuel Vadot }; 86c66ec88fSEmmanuel Vadot 87c66ec88fSEmmanuel Vadot timer@640 { // General Purpose Timer 88c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 89c66ec88fSEmmanuel Vadot reg = <0x640 0x10>; 90c66ec88fSEmmanuel Vadot interrupts = <1 13 0>; 91c66ec88fSEmmanuel Vadot }; 92c66ec88fSEmmanuel Vadot 93c66ec88fSEmmanuel Vadot timer@650 { // General Purpose Timer 94c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 95c66ec88fSEmmanuel Vadot reg = <0x650 0x10>; 96c66ec88fSEmmanuel Vadot interrupts = <1 14 0>; 97c66ec88fSEmmanuel Vadot }; 98c66ec88fSEmmanuel Vadot 99c66ec88fSEmmanuel Vadot timer@660 { // General Purpose Timer 100c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 101c66ec88fSEmmanuel Vadot reg = <0x660 0x10>; 102c66ec88fSEmmanuel Vadot interrupts = <1 15 0>; 103c66ec88fSEmmanuel Vadot }; 104c66ec88fSEmmanuel Vadot 105c66ec88fSEmmanuel Vadot timer@670 { // General Purpose Timer 106c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpt"; 107c66ec88fSEmmanuel Vadot reg = <0x670 0x10>; 108c66ec88fSEmmanuel Vadot interrupts = <1 16 0>; 109c66ec88fSEmmanuel Vadot }; 110c66ec88fSEmmanuel Vadot 111c66ec88fSEmmanuel Vadot rtc@800 { // Real time clock 112c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-rtc"; 113c66ec88fSEmmanuel Vadot reg = <0x800 0x100>; 114c66ec88fSEmmanuel Vadot interrupts = <1 5 0 1 6 0>; 115c66ec88fSEmmanuel Vadot }; 116c66ec88fSEmmanuel Vadot 117c66ec88fSEmmanuel Vadot can@900 { 118c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-mscan"; 119c66ec88fSEmmanuel Vadot interrupts = <2 17 0>; 120c66ec88fSEmmanuel Vadot reg = <0x900 0x80>; 121c66ec88fSEmmanuel Vadot }; 122c66ec88fSEmmanuel Vadot 123c66ec88fSEmmanuel Vadot can@980 { 124c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-mscan"; 125c66ec88fSEmmanuel Vadot interrupts = <2 18 0>; 126c66ec88fSEmmanuel Vadot reg = <0x980 0x80>; 127c66ec88fSEmmanuel Vadot }; 128c66ec88fSEmmanuel Vadot 129c66ec88fSEmmanuel Vadot gpio@b00 { 130c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpio"; 131c66ec88fSEmmanuel Vadot reg = <0xb00 0x40>; 132c66ec88fSEmmanuel Vadot interrupts = <1 7 0>; 133c66ec88fSEmmanuel Vadot gpio-controller; 134c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 135c66ec88fSEmmanuel Vadot }; 136c66ec88fSEmmanuel Vadot 137c66ec88fSEmmanuel Vadot gpio@c00 { 138c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-gpio-wkup"; 139c66ec88fSEmmanuel Vadot reg = <0xc00 0x40>; 140c66ec88fSEmmanuel Vadot interrupts = <1 8 0 0 3 0>; 141c66ec88fSEmmanuel Vadot gpio-controller; 142c66ec88fSEmmanuel Vadot #gpio-cells = <2>; 143c66ec88fSEmmanuel Vadot }; 144c66ec88fSEmmanuel Vadot 145c66ec88fSEmmanuel Vadot spi@f00 { 146c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-spi"; 147c66ec88fSEmmanuel Vadot reg = <0xf00 0x20>; 148c66ec88fSEmmanuel Vadot interrupts = <2 13 0 2 14 0>; 149c66ec88fSEmmanuel Vadot }; 150c66ec88fSEmmanuel Vadot 151c66ec88fSEmmanuel Vadot usb@1000 { 152c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-ohci","ohci-be"; 153c66ec88fSEmmanuel Vadot reg = <0x1000 0xff>; 154c66ec88fSEmmanuel Vadot interrupts = <2 6 0>; 155c66ec88fSEmmanuel Vadot }; 156c66ec88fSEmmanuel Vadot 157c66ec88fSEmmanuel Vadot dma-controller@1200 { 158c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-bestcomm"; 159c66ec88fSEmmanuel Vadot reg = <0x1200 0x80>; 160c66ec88fSEmmanuel Vadot interrupts = <3 0 0 3 1 0 3 2 0 3 3 0 161c66ec88fSEmmanuel Vadot 3 4 0 3 5 0 3 6 0 3 7 0 162c66ec88fSEmmanuel Vadot 3 8 0 3 9 0 3 10 0 3 11 0 163c66ec88fSEmmanuel Vadot 3 12 0 3 13 0 3 14 0 3 15 0>; 164c66ec88fSEmmanuel Vadot }; 165c66ec88fSEmmanuel Vadot 166c66ec88fSEmmanuel Vadot xlb@1f00 { 167c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-xlb"; 168c66ec88fSEmmanuel Vadot reg = <0x1f00 0x100>; 169c66ec88fSEmmanuel Vadot }; 170c66ec88fSEmmanuel Vadot 171c66ec88fSEmmanuel Vadot serial@2000 { // PSC1 172c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-psc-uart"; 173c66ec88fSEmmanuel Vadot cell-index = <0>; 174c66ec88fSEmmanuel Vadot reg = <0x2000 0x100>; 175c66ec88fSEmmanuel Vadot interrupts = <2 1 0>; 176c66ec88fSEmmanuel Vadot }; 177c66ec88fSEmmanuel Vadot 178c66ec88fSEmmanuel Vadot // PSC2 in ac97 mode example 179c66ec88fSEmmanuel Vadot //ac97@2200 { // PSC2 180c66ec88fSEmmanuel Vadot // compatible = "fsl,mpc5200-psc-ac97"; 181c66ec88fSEmmanuel Vadot // cell-index = <1>; 182c66ec88fSEmmanuel Vadot // reg = <0x2200 0x100>; 183c66ec88fSEmmanuel Vadot // interrupts = <2 2 0>; 184c66ec88fSEmmanuel Vadot //}; 185c66ec88fSEmmanuel Vadot 186c66ec88fSEmmanuel Vadot // PSC3 in CODEC mode example 187c66ec88fSEmmanuel Vadot //i2s@2400 { // PSC3 188c66ec88fSEmmanuel Vadot // compatible = "fsl,mpc5200-psc-i2s"; 189c66ec88fSEmmanuel Vadot // cell-index = <2>; 190c66ec88fSEmmanuel Vadot // reg = <0x2400 0x100>; 191c66ec88fSEmmanuel Vadot // interrupts = <2 3 0>; 192c66ec88fSEmmanuel Vadot //}; 193c66ec88fSEmmanuel Vadot 194c66ec88fSEmmanuel Vadot // PSC4 in uart mode example 195c66ec88fSEmmanuel Vadot //serial@2600 { // PSC4 196c66ec88fSEmmanuel Vadot // compatible = "fsl,mpc5200-psc-uart"; 197c66ec88fSEmmanuel Vadot // cell-index = <3>; 198c66ec88fSEmmanuel Vadot // reg = <0x2600 0x100>; 199c66ec88fSEmmanuel Vadot // interrupts = <2 11 0>; 200c66ec88fSEmmanuel Vadot //}; 201c66ec88fSEmmanuel Vadot 202c66ec88fSEmmanuel Vadot // PSC5 in uart mode example 203c66ec88fSEmmanuel Vadot //serial@2800 { // PSC5 204c66ec88fSEmmanuel Vadot // compatible = "fsl,mpc5200-psc-uart"; 205c66ec88fSEmmanuel Vadot // cell-index = <4>; 206c66ec88fSEmmanuel Vadot // reg = <0x2800 0x100>; 207c66ec88fSEmmanuel Vadot // interrupts = <2 12 0>; 208c66ec88fSEmmanuel Vadot //}; 209c66ec88fSEmmanuel Vadot 210c66ec88fSEmmanuel Vadot // PSC6 in spi mode example 211c66ec88fSEmmanuel Vadot //spi@2c00 { // PSC6 212c66ec88fSEmmanuel Vadot // compatible = "fsl,mpc5200-psc-spi"; 213c66ec88fSEmmanuel Vadot // cell-index = <5>; 214c66ec88fSEmmanuel Vadot // reg = <0x2c00 0x100>; 215c66ec88fSEmmanuel Vadot // interrupts = <2 4 0>; 216c66ec88fSEmmanuel Vadot //}; 217c66ec88fSEmmanuel Vadot 218c66ec88fSEmmanuel Vadot ethernet@3000 { 219c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-fec"; 220c66ec88fSEmmanuel Vadot reg = <0x3000 0x400>; 221c66ec88fSEmmanuel Vadot local-mac-address = [ 00 00 00 00 00 00 ]; 222c66ec88fSEmmanuel Vadot interrupts = <2 5 0>; 223c66ec88fSEmmanuel Vadot phy-handle = <&phy0>; 224c66ec88fSEmmanuel Vadot }; 225c66ec88fSEmmanuel Vadot 226c66ec88fSEmmanuel Vadot mdio@3000 { 227c66ec88fSEmmanuel Vadot #address-cells = <1>; 228c66ec88fSEmmanuel Vadot #size-cells = <0>; 229c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-mdio"; 230c66ec88fSEmmanuel Vadot reg = <0x3000 0x400>; // fec range, since we need to setup fec interrupts 231c66ec88fSEmmanuel Vadot interrupts = <2 5 0>; // these are for "mii command finished", not link changes & co. 232c66ec88fSEmmanuel Vadot 233c66ec88fSEmmanuel Vadot phy0: ethernet-phy@0 { 234c66ec88fSEmmanuel Vadot reg = <0>; 235c66ec88fSEmmanuel Vadot }; 236c66ec88fSEmmanuel Vadot }; 237c66ec88fSEmmanuel Vadot 238c66ec88fSEmmanuel Vadot ata@3a00 { 239c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-ata"; 240c66ec88fSEmmanuel Vadot reg = <0x3a00 0x100>; 241c66ec88fSEmmanuel Vadot interrupts = <2 7 0>; 242c66ec88fSEmmanuel Vadot }; 243c66ec88fSEmmanuel Vadot 244c66ec88fSEmmanuel Vadot i2c@3d00 { 245c66ec88fSEmmanuel Vadot #address-cells = <1>; 246c66ec88fSEmmanuel Vadot #size-cells = <0>; 247c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-i2c","fsl-i2c"; 248c66ec88fSEmmanuel Vadot reg = <0x3d00 0x40>; 249c66ec88fSEmmanuel Vadot interrupts = <2 15 0>; 250c66ec88fSEmmanuel Vadot }; 251c66ec88fSEmmanuel Vadot 252c66ec88fSEmmanuel Vadot i2c@3d40 { 253c66ec88fSEmmanuel Vadot #address-cells = <1>; 254c66ec88fSEmmanuel Vadot #size-cells = <0>; 255c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-i2c","fsl-i2c"; 256c66ec88fSEmmanuel Vadot reg = <0x3d40 0x40>; 257c66ec88fSEmmanuel Vadot interrupts = <2 16 0>; 258c66ec88fSEmmanuel Vadot 259c66ec88fSEmmanuel Vadot eeprom@50 { 260c66ec88fSEmmanuel Vadot compatible = "atmel,24c02"; 261c66ec88fSEmmanuel Vadot reg = <0x50>; 262c66ec88fSEmmanuel Vadot }; 263c66ec88fSEmmanuel Vadot }; 264c66ec88fSEmmanuel Vadot 265c66ec88fSEmmanuel Vadot sram@8000 { 266c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-sram"; 267c66ec88fSEmmanuel Vadot reg = <0x8000 0x4000>; 268c66ec88fSEmmanuel Vadot }; 269c66ec88fSEmmanuel Vadot }; 270c66ec88fSEmmanuel Vadot 271c66ec88fSEmmanuel Vadot pci@f0000d00 { 272c66ec88fSEmmanuel Vadot #interrupt-cells = <1>; 273c66ec88fSEmmanuel Vadot #size-cells = <2>; 274c66ec88fSEmmanuel Vadot #address-cells = <3>; 275c66ec88fSEmmanuel Vadot device_type = "pci"; 276c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-pci"; 277c66ec88fSEmmanuel Vadot reg = <0xf0000d00 0x100>; 278c66ec88fSEmmanuel Vadot interrupt-map-mask = <0xf800 0 0 7>; 279c66ec88fSEmmanuel Vadot interrupt-map = <0xc000 0 0 1 &mpc5200_pic 0 0 3 280c66ec88fSEmmanuel Vadot 0xc000 0 0 2 &mpc5200_pic 0 0 3 281c66ec88fSEmmanuel Vadot 0xc000 0 0 3 &mpc5200_pic 0 0 3 282c66ec88fSEmmanuel Vadot 0xc000 0 0 4 &mpc5200_pic 0 0 3>; 283c66ec88fSEmmanuel Vadot clock-frequency = <0>; // From boot loader 284c66ec88fSEmmanuel Vadot interrupts = <2 8 0 2 9 0 2 10 0>; 285c66ec88fSEmmanuel Vadot bus-range = <0 0>; 286*8cc087a1SEmmanuel Vadot ranges = <0x42000000 0 0x80000000 0x80000000 0 0x20000000>, 287*8cc087a1SEmmanuel Vadot <0x02000000 0 0xa0000000 0xa0000000 0 0x10000000>, 288*8cc087a1SEmmanuel Vadot <0x01000000 0 0x00000000 0xb0000000 0 0x01000000>; 289c66ec88fSEmmanuel Vadot }; 290c66ec88fSEmmanuel Vadot 291c66ec88fSEmmanuel Vadot localbus { 292c66ec88fSEmmanuel Vadot compatible = "fsl,mpc5200-lpb","simple-bus"; 293c66ec88fSEmmanuel Vadot #address-cells = <2>; 294c66ec88fSEmmanuel Vadot #size-cells = <1>; 295c66ec88fSEmmanuel Vadot 296c66ec88fSEmmanuel Vadot ranges = <0 0 0xff000000 0x01000000>; 297c66ec88fSEmmanuel Vadot 298c66ec88fSEmmanuel Vadot flash@0,0 { 299c66ec88fSEmmanuel Vadot compatible = "amd,am29lv652d", "cfi-flash"; 300c66ec88fSEmmanuel Vadot reg = <0 0 0x01000000>; 301c66ec88fSEmmanuel Vadot bank-width = <1>; 302c66ec88fSEmmanuel Vadot }; 303c66ec88fSEmmanuel Vadot }; 304c66ec88fSEmmanuel Vadot}; 305