// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Digsy MTC board Device Tree Source
 *
 * Copyright (C) 2009 Semihalf
 *
 * Based on the CM5200 by M. Balakowicz
 */

/include/ "mpc5200b.dtsi"

&gpt0 { gpio-controller; fsl,has-wdt; };
&gpt1 { gpio-controller; };

/ {
	model = "intercontrol,digsy-mtc";
	compatible = "intercontrol,digsy-mtc";

	memory@0 {
		reg = <0x00000000 0x02000000>;	// 32MB
	};

	soc5200@f0000000 {
		rtc@800 {
			status = "disabled";
		};

		psc@2000 {		// PSC1
			status = "disabled";
		};

		psc@2200 {		// PSC2
			status = "disabled";
		};

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

		psc@2600 {		// PSC4
			compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
		};

		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@0 {
				reg = <0>;
			};
		};

		i2c@3d00 {
			eeprom@50 {
				compatible = "atmel,24c08";
				reg = <0x50>;
			};

			rtc@56 {
				compatible = "microcrystal,rv3029";
				reg = <0x56>;
			};

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

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

	pci@f0000d00 {
		interrupt-map-mask = <0xf800 0 0 7>;
		interrupt-map = <0xc000 0 0 1 &mpc5200_pic 0 0 3
				 0xc000 0 0 2 &mpc5200_pic 0 0 3
				 0xc000 0 0 3 &mpc5200_pic 0 0 3
				 0xc000 0 0 4 &mpc5200_pic 0 0 3>;
		clock-frequency = <0>; // From boot loader
		interrupts = <2 8 0 2 9 0 2 10 0>;
		bus-range = <0 0>;
		ranges = <0x42000000 0 0x80000000 0x80000000 0 0x10000000>,
			 <0x02000000 0 0x90000000 0x90000000 0 0x10000000>,
			 <0x01000000 0 0x00000000 0xa0000000 0 0x01000000>;
	};

	localbus {
		ranges = <0 0 0xff000000 0x1000000
			  4 0 0x60000000 0x0001000>;

		// 16-bit flash device at LocalPlus Bus CS0
		flash@0,0 {
			compatible = "cfi-flash";
			reg = <0 0 0x1000000>;
			bank-width = <2>;
			device-width = <2>;
			#size-cells = <1>;
			#address-cells = <1>;

			partition@0 {
				label = "kernel";
				reg = <0x0 0x00200000>;
			};
			partition@200000 {
				label = "root";
				reg = <0x00200000 0x00300000>;
			};
			partition@500000 {
				label = "user";
				reg = <0x00500000 0x00a00000>;
			};
			partition@f00000 {
				label = "u-boot";
				reg = <0x00f00000 0x100000>;
			};
		};

		can@4,0 {
			compatible = "nxp,sja1000";
			reg = <4 0x000 0x80>;
			nxp,external-clock-frequency = <24000000>;
			interrupts = <1 2 3>; // Level-low
		};

		can@4,100 {
			compatible = "nxp,sja1000";
			reg = <4 0x100 0x80>;
			nxp,external-clock-frequency = <24000000>;
			interrupts = <1 2 3>;  // Level-low
		};

		serial@4,200 {
			compatible = "nxp,sc28l92";
			reg = <4 0x200 0x10>;
			interrupts = <1 3 3>;
		};
	};
};
