// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Motion-PRO board Device Tree Source
 *
 * Copyright (C) 2007 Semihalf
 * Marian Balakowicz <m8@semihalf.com>
 */

/include/ "mpc5200b.dtsi"

&gpt0 { fsl,has-wdt; };
&gpt6 { // Motion-PRO status LED
	compatible = "promess,motionpro-led";
	label = "motionpro-statusled";
	blink-delay = <100>; // 100 msec
};
&gpt7 { // Motion-PRO ready LED
	compatible = "promess,motionpro-led";
	label = "motionpro-readyled";
};

/ {
	model = "promess,motionpro";
	compatible = "promess,motionpro";

	soc5200@f0000000 {
		can@900 {
			status = "disabled";
		};

		psc@2000 {		// PSC1
			compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
		};

		// PSC2 in spi master mode 
		psc@2200 {		// PSC2
			compatible = "fsl,mpc5200b-psc-spi","fsl,mpc5200-psc-spi";
			cell-index = <1>;
		};

		psc@2400 {		// PSC3
			status = "disabled";
		};

		psc@2600 {		// PSC4
			status = "disabled";
		};

		psc@2800 {		// PSC5
			compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
		};

		psc@2c00 {		// PSC6
			status = "disabled";
		};

		ethernet@3000 {
			phy-handle = <&phy0>;
		};

		mdio@3000 {
			phy0: ethernet-phy@2 {
				reg = <2>;
			};
		};

		i2c@3d00 {
			status = "disabled";
		};

		i2c@3d40 {
			rtc@68 {
				compatible = "dallas,ds1339";
				reg = <0x68>;
			};
		};

		sram@8000 {
			compatible = "fsl,mpc5200b-sram","fsl,mpc5200-sram";
			reg = <0x8000 0x4000>;
		};
	};

	pci@f0000d00 {
		status = "disabled";
	};

	localbus {
		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>;
		};

	};
};