b884245107
Trim out obsolete/extraneous properties and tighten up some usage conventions. Changes include: - removal of device_type properties - removal of cell-index properties - Addition of gpio-controller and #gpio-cells properties to gpio nodes - Move common interrupt-parent property out of device nodes and into top level parent node. This patch also include what looks to be just trivial editorial whitespace/format changes, but there is real method in this madness. Editorial changes were made to keep the all the mpc5200 board device trees as similar as possible so that diffs between them only show the real differences between the boards. The pcm030 device tree was most affected by this because many of the comments had been changed from // to /* */ style and some cell values where changed from decimal to hex format when it was cloned from one of the other 5200 device trees. Signed-off-by: Grant Likely <grant.likely@secretlab.ca> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de>
285 lines
6.7 KiB
Text
285 lines
6.7 KiB
Text
/*
|
|
* Motion-PRO board Device Tree Source
|
|
*
|
|
* Copyright (C) 2007 Semihalf
|
|
* Marian Balakowicz <m8@semihalf.com>
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify it
|
|
* under the terms of the GNU General Public License as published by the
|
|
* Free Software Foundation; either version 2 of the License, or (at your
|
|
* option) any later version.
|
|
*/
|
|
|
|
/dts-v1/;
|
|
|
|
/ {
|
|
model = "promess,motionpro";
|
|
compatible = "promess,motionpro";
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
interrupt-parent = <&mpc5200_pic>;
|
|
|
|
cpus {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
|
|
PowerPC,5200@0 {
|
|
device_type = "cpu";
|
|
reg = <0>;
|
|
d-cache-line-size = <32>;
|
|
i-cache-line-size = <32>;
|
|
d-cache-size = <0x4000>; // L1, 16K
|
|
i-cache-size = <0x4000>; // L1, 16K
|
|
timebase-frequency = <0>; // from bootloader
|
|
bus-frequency = <0>; // from bootloader
|
|
clock-frequency = <0>; // from bootloader
|
|
};
|
|
};
|
|
|
|
memory {
|
|
device_type = "memory";
|
|
reg = <0x00000000 0x04000000>; // 64MB
|
|
};
|
|
|
|
soc5200@f0000000 {
|
|
#address-cells = <1>;
|
|
#size-cells = <1>;
|
|
compatible = "fsl,mpc5200b-immr";
|
|
ranges = <0 0xf0000000 0x0000c000>;
|
|
reg = <0xf0000000 0x00000100>;
|
|
bus-frequency = <0>; // from bootloader
|
|
system-frequency = <0>; // from bootloader
|
|
|
|
cdm@200 {
|
|
compatible = "fsl,mpc5200b-cdm","fsl,mpc5200-cdm";
|
|
reg = <0x200 0x38>;
|
|
};
|
|
|
|
mpc5200_pic: interrupt-controller@500 {
|
|
// 5200 interrupts are encoded into two levels;
|
|
interrupt-controller;
|
|
#interrupt-cells = <3>;
|
|
compatible = "fsl,mpc5200b-pic","fsl,mpc5200-pic";
|
|
reg = <0x500 0x80>;
|
|
};
|
|
|
|
timer@600 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x600 0x10>;
|
|
interrupts = <1 9 0>;
|
|
fsl,has-wdt;
|
|
};
|
|
|
|
timer@610 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x610 0x10>;
|
|
interrupts = <1 10 0>;
|
|
};
|
|
|
|
timer@620 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x620 0x10>;
|
|
interrupts = <1 11 0>;
|
|
};
|
|
|
|
timer@630 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x630 0x10>;
|
|
interrupts = <1 12 0>;
|
|
};
|
|
|
|
timer@640 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x640 0x10>;
|
|
interrupts = <1 13 0>;
|
|
};
|
|
|
|
timer@650 { // General Purpose Timer
|
|
compatible = "fsl,mpc5200b-gpt","fsl,mpc5200-gpt";
|
|
reg = <0x650 0x10>;
|
|
interrupts = <1 14 0>;
|
|
};
|
|
|
|
motionpro-led@660 { // Motion-PRO status LED
|
|
compatible = "promess,motionpro-led";
|
|
label = "motionpro-statusled";
|
|
reg = <0x660 0x10>;
|
|
interrupts = <1 15 0>;
|
|
blink-delay = <100>; // 100 msec
|
|
};
|
|
|
|
motionpro-led@670 { // Motion-PRO ready LED
|
|
compatible = "promess,motionpro-led";
|
|
label = "motionpro-readyled";
|
|
reg = <0x670 0x10>;
|
|
interrupts = <1 16 0>;
|
|
};
|
|
|
|
rtc@800 { // Real time clock
|
|
compatible = "fsl,mpc5200b-rtc","fsl,mpc5200-rtc";
|
|
reg = <0x800 0x100>;
|
|
interrupts = <1 5 0 1 6 0>;
|
|
};
|
|
|
|
can@980 {
|
|
compatible = "fsl,mpc5200b-mscan","fsl,mpc5200-mscan";
|
|
interrupts = <2 18 0>;
|
|
reg = <0x980 0x80>;
|
|
};
|
|
|
|
gpio_simple: gpio@b00 {
|
|
compatible = "fsl,mpc5200b-gpio","fsl,mpc5200-gpio";
|
|
reg = <0xb00 0x40>;
|
|
interrupts = <1 7 0>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
gpio_wkup: gpio@c00 {
|
|
compatible = "fsl,mpc5200b-gpio-wkup","fsl,mpc5200-gpio-wkup";
|
|
reg = <0xc00 0x40>;
|
|
interrupts = <1 8 0 0 3 0>;
|
|
gpio-controller;
|
|
#gpio-cells = <2>;
|
|
};
|
|
|
|
spi@f00 {
|
|
compatible = "fsl,mpc5200b-spi","fsl,mpc5200-spi";
|
|
reg = <0xf00 0x20>;
|
|
interrupts = <2 13 0 2 14 0>;
|
|
};
|
|
|
|
usb@1000 {
|
|
compatible = "fsl,mpc5200b-ohci","fsl,mpc5200-ohci","ohci-be";
|
|
reg = <0x1000 0xff>;
|
|
interrupts = <2 6 0>;
|
|
};
|
|
|
|
dma-controller@1200 {
|
|
compatible = "fsl,mpc5200b-bestcomm","fsl,mpc5200-bestcomm";
|
|
reg = <0x1200 0x80>;
|
|
interrupts = <3 0 0 3 1 0 3 2 0 3 3 0
|
|
3 4 0 3 5 0 3 6 0 3 7 0
|
|
3 8 0 3 9 0 3 10 0 3 11 0
|
|
3 12 0 3 13 0 3 14 0 3 15 0>;
|
|
};
|
|
|
|
xlb@1f00 {
|
|
compatible = "fsl,mpc5200b-xlb","fsl,mpc5200-xlb";
|
|
reg = <0x1f00 0x100>;
|
|
};
|
|
|
|
serial@2000 { // PSC1
|
|
compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
|
|
reg = <0x2000 0x100>;
|
|
interrupts = <2 1 0>;
|
|
};
|
|
|
|
// PSC2 in spi master mode
|
|
spi@2200 { // PSC2
|
|
compatible = "fsl,mpc5200b-psc-spi","fsl,mpc5200-psc-spi";
|
|
cell-index = <1>;
|
|
reg = <0x2200 0x100>;
|
|
interrupts = <2 2 0>;
|
|
};
|
|
|
|
// PSC5 in uart mode
|
|
serial@2800 { // PSC5
|
|
compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
|
|
reg = <0x2800 0x100>;
|
|
interrupts = <2 12 0>;
|
|
};
|
|
|
|
ethernet@3000 {
|
|
compatible = "fsl,mpc5200b-fec","fsl,mpc5200-fec";
|
|
reg = <0x3000 0x400>;
|
|
local-mac-address = [ 00 00 00 00 00 00 ];
|
|
interrupts = <2 5 0>;
|
|
phy-handle = <&phy0>;
|
|
};
|
|
|
|
mdio@3000 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "fsl,mpc5200b-mdio","fsl,mpc5200-mdio";
|
|
reg = <0x3000 0x400>; // fec range, since we need to setup fec interrupts
|
|
interrupts = <2 5 0>; // these are for "mii command finished", not link changes & co.
|
|
|
|
phy0: ethernet-phy@2 {
|
|
reg = <2>;
|
|
};
|
|
};
|
|
|
|
ata@3a00 {
|
|
compatible = "fsl,mpc5200b-ata","fsl,mpc5200-ata";
|
|
reg = <0x3a00 0x100>;
|
|
interrupts = <2 7 0>;
|
|
};
|
|
|
|
i2c@3d40 {
|
|
#address-cells = <1>;
|
|
#size-cells = <0>;
|
|
compatible = "fsl,mpc5200b-i2c","fsl,mpc5200-i2c","fsl-i2c";
|
|
reg = <0x3d40 0x40>;
|
|
interrupts = <2 16 0>;
|
|
fsl5200-clocking;
|
|
|
|
rtc@68 {
|
|
compatible = "dallas,ds1339";
|
|
reg = <0x68>;
|
|
};
|
|
};
|
|
|
|
sram@8000 {
|
|
compatible = "fsl,mpc5200b-sram","fsl,mpc5200-sram";
|
|
reg = <0x8000 0x4000>;
|
|
};
|
|
};
|
|
|
|
localbus {
|
|
compatible = "fsl,mpc5200b-lpb","simple-bus";
|
|
#address-cells = <2>;
|
|
#size-cells = <1>;
|
|
ranges = <0 0 0xff000000 0x01000000
|
|
1 0 0x50000000 0x00010000
|
|
2 0 0x50010000 0x00010000
|
|
3 0 0x50020000 0x00010000>;
|
|
|
|
// 8-bit DualPort SRAM on LocalPlus Bus CS1
|
|
kollmorgen@1,0 {
|
|
compatible = "promess,motionpro-kollmorgen";
|
|
reg = <1 0 0x10000>;
|
|
interrupts = <1 1 0>;
|
|
};
|
|
|
|
// 8-bit board CPLD on LocalPlus Bus CS2
|
|
cpld@2,0 {
|
|
compatible = "promess,motionpro-cpld";
|
|
reg = <2 0 0x10000>;
|
|
};
|
|
|
|
// 8-bit custom Anybus Module on LocalPlus Bus CS3
|
|
anybus@3,0 {
|
|
compatible = "promess,motionpro-anybus";
|
|
reg = <3 0 0x10000>;
|
|
};
|
|
pro_module_general@3,0 {
|
|
compatible = "promess,pro_module_general";
|
|
reg = <3 0 3>;
|
|
};
|
|
pro_module_dio@3,800 {
|
|
compatible = "promess,pro_module_dio";
|
|
reg = <3 0x800 2>;
|
|
};
|
|
|
|
// 16-bit flash device at LocalPlus Bus CS0
|
|
flash@0,0 {
|
|
compatible = "cfi-flash";
|
|
reg = <0 0 0x01000000>;
|
|
bank-width = <2>;
|
|
device-width = <2>;
|
|
#size-cells = <1>;
|
|
#address-cells = <1>;
|
|
};
|
|
};
|
|
};
|