/*
 * Device Tree Source for the MPC5121e based ac14xx board
 *
 * Copyright 2012 Anatolij Gustschin <agust@denx.de>
 *
 * 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.
 */


#include "mpc5121.dtsi"

/ {
	model = "ac14xx";
	compatible = "ifm,ac14xx", "fsl,mpc5121";
	#address-cells = <1>;
	#size-cells = <1>;

	aliases {
		serial0 = &serial0;
		serial1 = &serial7;
		spi4 = &spi4;
		spi5 = &spi5;
	};

	cpus {
		PowerPC,5121@0 {
			timebase-frequency = <40000000>;	/*  40 MHz (csb/4) */
			bus-frequency = <160000000>;		/* 160 MHz csb bus */
			clock-frequency = <400000000>;		/* 400 MHz ppc core */
		};
	};

	memory {
		reg = <0x00000000 0x10000000>;			/* 256MB at 0 */
	};

	nfc@40000000 {
		status = "disabled";
	};

	localbus@80000020 {
		ranges = <0x0 0x0 0xfc000000 0x04000000	/* CS0: NOR flash */
			  0x1 0x0 0xe0000000 0x00010000 /* CS1: FRAM */
			  0x2 0x0 0xe0100000 0x00080000 /* CS2: asi1 */
			  0x3 0x0 0xe0300000 0x00020000 /* CS3: comm */
			  0x5 0x0 0xe0400000 0x00010000 /* CS5: safety */
			  0x6 0x0 0xe0200000 0x00080000>; /* CS6: asi2 */

		flash@0,0 {
			compatible = "cfi-flash";
			reg = <0 0x00000000 0x04000000>;
			#address-cells = <1>;
			#size-cells = <1>;
			bank-width = <2>;
			device-width = <2>;

			partition@0 {
				label = "dtb-kernel-production";
				reg = <0x00000000 0x00400000>;
			};
			partition@1 {
				label = "filesystem-production";
				reg = <0x00400000 0x03400000>;
			};

			partition@2 {
				label = "recovery";
				reg = <0x03800000 0x00700000>;
			};

			partition@3 {
				label = "uboot-code";
				reg = <0x03f00000 0x00040000>;
			};
			partition@4 {
				label = "uboot-env1";
				reg = <0x03f40000 0x00020000>;
			};
			partition@5 {
				label = "uboot-env2";
				reg = <0x03f60000 0x00020000>;
			};
		};

		fram@1,0 {
			compatible = "ifm,ac14xx-fram", "linux,uio-pdrv-genirq";
			reg = <1 0x00000000 0x00010000>;
		};

		asi@2,0 {
			/* masters mapping: CS, CS offset, size */
			reg = <2 0x00000000 0x00080000
			       6 0x00000000 0x00080000>;
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "ifm,ac14xx-asi-fpga";
			gpios = <
				&gpio_pic 26 0	/* prog */
				&gpio_pic 27 0	/* done */
				&gpio_pic 10 0	/* reset */
				>;

			master@1 {
				interrupts = <20 0x2>;
				interrupt-parent = <&gpio_pic>;
				chipselect = <2 0x00009000 0x00009100>;
				label = "AS-i master 1";
			};

			master@2 {
				interrupts = <21 0x2>;
				interrupt-parent = <&gpio_pic>;
				chipselect = <6 0x00009000 0x00009100>;
				label = "AS-i master 2";
			};
		};

		netx@3,0 {
			compatible = "ifm,netx";
			reg = <0x3 0x00000000 0x00020000>;
			chipselect = <3 0x00101140 0x00203100>;
			interrupts = <17 0x8>;
			gpios = <&gpio_pic 15 0>;
		};

		safety@5,0 {
			compatible = "ifm,safety";
			reg = <0x5 0x00000000 0x00010000>;
			chipselect = <5 0x00009000 0x00009100>;
			interrupts = <22 0x2>;
			interrupt-parent = <&gpio_pic>;
			gpios = <
				&gpio_pic 12 0	/* prog */
				&gpio_pic 11 0	/* done */
				>;
		};
	};

	clocks {
		osc {
			clock-frequency = <25000000>;
		};
	};

	soc@80000000 {
		bus-frequency = <80000000>;	/* 80 MHz ips bus */

		clock@f00 {
			compatible = "fsl,mpc5121rev2-clock", "fsl,mpc5121-clock";
		};

		/*
		 * GPIO PIC:
		 * interrupts cell = <pin nr, sense>
		 * sense == 8: Level, low assertion
		 * sense == 2: Edge, high-to-low change
		 */
		gpio_pic: gpio@1100 {
			gpio-controller;
			#gpio-cells = <2>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};

		sdhc@1500 {
			cd-gpios = <&gpio_pic 23 0>;	/* card detect */
			wp-gpios = <&gpio_pic 24 0>;	/* write protect */
			wp-inverted;			/* WP active high */
		};

		i2c@1700 {
			/* use Fast-mode */
			clock-frequency = <400000>;

			at24@30 {
				compatible = "at24,24c01";
				reg = <0x30>;
			};

			at24@31 {
				compatible = "at24,24c01";
				reg = <0x31>;
			};

			temp@48 {
				compatible = "ad,ad7414";
				reg = <0x48>;
			};

			at24@50 {
				compatible = "at24,24c01";
				reg = <0x50>;
			};

			at24@51 {
				compatible = "at24,24c01";
				reg = <0x51>;
			};

			at24@52 {
				compatible = "at24,24c01";
				reg = <0x52>;
			};

			at24@53 {
				compatible = "at24,24c01";
				reg = <0x53>;
			};

			at24@54 {
				compatible = "at24,24c01";
				reg = <0x54>;
			};

			at24@55 {
				compatible = "at24,24c01";
				reg = <0x55>;
			};

			at24@56 {
				compatible = "at24,24c01";
				reg = <0x56>;
			};

			at24@57 {
				compatible = "at24,24c01";
				reg = <0x57>;
			};

			rtc@68 {
				compatible = "st,m41t00";
				reg = <0x68>;
			};
		};

		axe_pic: axe-base@2000 {
			compatible = "fsl,mpc5121-axe-base";
			reg = <0x2000 0x100>;
			interrupts = <42 0x8>;
			interrupt-controller;
			#interrupt-cells = <2>;
		};

		axe-app {
			compatible = "fsl,mpc5121-axe-app";
			interrupt-parent = <&axe_pic>;
			interrupts = <
					/* soft interrupts */
					0 0x0	1 0x0	2 0x0	3 0x0
					4 0x0	5 0x0	6 0x0	7 0x0
					/* fifo interrupts */
					8 0x0	9 0x0	10 0x0	11 0x0
				>;
		};

		display@2100 {
			edid = [00 FF FF FF FF FF FF 00 14 94 00 00 00 00 00 00
				0A 12 01 03 80 1C 23 78 CA 88 FF 94 52 54 8E 27
				1E 4C 50 00 00 00 01 01 01 01 01 01 01 01 01 01
				01 01 01 01 01 01 FB 00 B0 14 00 DC 05 00 08 04
				21 00 1C 23 00 00 00 18 00 00 00 FD 00 38 3C 1F
				3C 01 0A 20 20 20 20 20 20 20 00 00 00 FC 00 45
				54 30 31 38 30 30 33 44 4D 55 0A 0A 00 00 00 10
				00 41 30 30 30 30 30 30 30 30 30 30 30 31 00 D5];
		};

		can@2300 {
			status = "disabled";
		};

		can@2380 {
			status = "disabled";
		};

		viu@2400 {
			status = "disabled";
		};

		mdio@2800 {
			phy0: ethernet-phy@1f {
				compatible = "smsc,lan8700";
				reg = <0x1f>;
			};
		};

		enet: ethernet@2800 {
			phy-handle = <&phy0>;
		};

		usb@3000 {
			status = "disabled";
		};

		usb@4000 {
			status = "disabled";
		};

		/* PSC3 serial port A, aka ttyPSC0 */
		serial0: psc@11300 {
			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
			fsl,rx-fifo-size = <512>;
			fsl,tx-fifo-size = <512>;
		};

		/* PSC4 in SPI mode */
		spi4: psc@11400 {
			compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
			fsl,rx-fifo-size = <768>;
			fsl,tx-fifo-size = <768>;
			#address-cells = <1>;
			#size-cells = <0>;
			num-cs = <1>;
			cs-gpios = <&gpio_pic 25 0>;

			flash: m25p128@0 {
				compatible = "st,m25p128";
				spi-max-frequency = <20000000>;
				reg = <0>;
				#address-cells = <1>;
				#size-cells = <1>;

				partition@0 {
					label = "spi-flash0";
					reg = <0x00000000 0x01000000>;
				};
			};
		};

		/* PSC5 in SPI mode */
		spi5: psc@11500 {
			compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc";
			fsl,mode = "spi-master";
			fsl,rx-fifo-size = <128>;
			fsl,tx-fifo-size = <128>;
			#address-cells = <1>;
			#size-cells = <0>;

			lcd@0 {
				compatible = "ilitek,ili922x";
				reg = <0>;
				spi-max-frequency = <100000>;
				spi-cpol;
				spi-cpha;
			};
		};

		/* PSC7 serial port C, aka ttyPSC2 */
		serial7: psc@11700 {
			compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc";
			fsl,rx-fifo-size = <512>;
			fsl,tx-fifo-size = <512>;
		};

		matrix_keypad@0 {
			compatible = "gpio-matrix-keypad";
			debounce-delay-ms = <5>;
			col-scan-delay-us = <1>;
			gpio-activelow;
			col-gpios-binary;
			col-switch-delay-ms = <200>;

			col-gpios = <&gpio_pic 1 0>;	/* pin1 */

			row-gpios = <&gpio_pic 2 0	/* pin2 */
				     &gpio_pic 3 0	/* pin3 */
				     &gpio_pic 4 0>;	/* pin4 */

			linux,keymap = <0x0000006e	/* FN LEFT */
					0x01000067	/* UP */
					0x02000066	/* FN RIGHT */
					0x00010069	/* LEFT */
					0x0101006a	/* DOWN */
					0x0201006c>;	/* RIGHT */
		};
	};

	leds {
		compatible = "gpio-leds";

		backlight {
			label = "backlight";
			gpios = <&gpio_pic 0 0>;
			default-state = "keep";
		};
		green {
			label = "green";
			gpios = <&gpio_pic 18 0>;
			default-state = "keep";
		};
		red {
			label = "red";
			gpios = <&gpio_pic 19 0>;
			default-state = "keep";
		};
	};
};
