156ebc063SAnatolij Gustschin/*
256ebc063SAnatolij Gustschin * O2D base Device Tree Source
356ebc063SAnatolij Gustschin *
456ebc063SAnatolij Gustschin * Copyright (C) 2012 DENX Software Engineering
556ebc063SAnatolij Gustschin * Anatolij Gustschin <agust@denx.de>
656ebc063SAnatolij Gustschin *
756ebc063SAnatolij Gustschin * This program is free software; you can redistribute  it and/or modify it
856ebc063SAnatolij Gustschin * under  the terms of  the GNU General  Public License as published by the
956ebc063SAnatolij Gustschin * Free Software Foundation;  either version 2 of the  License, or (at your
1056ebc063SAnatolij Gustschin * option) any later version.
1156ebc063SAnatolij Gustschin */
1256ebc063SAnatolij Gustschin
1356ebc063SAnatolij Gustschin/include/ "mpc5200b.dtsi"
1456ebc063SAnatolij Gustschin
1556ebc063SAnatolij Gustschin/ {
1656ebc063SAnatolij Gustschin	model = "ifm,o2d";
1756ebc063SAnatolij Gustschin	compatible = "ifm,o2d";
1856ebc063SAnatolij Gustschin
1956ebc063SAnatolij Gustschin	memory {
2056ebc063SAnatolij Gustschin		reg = <0x00000000 0x04000000>;	// 64MB
2156ebc063SAnatolij Gustschin	};
2256ebc063SAnatolij Gustschin
2356ebc063SAnatolij Gustschin	soc5200@f0000000 {
2456ebc063SAnatolij Gustschin
2556ebc063SAnatolij Gustschin		gpio_simple: gpio@b00 {
2656ebc063SAnatolij Gustschin		};
2756ebc063SAnatolij Gustschin
2856ebc063SAnatolij Gustschin		timer@600 {	// General Purpose Timer
2956ebc063SAnatolij Gustschin			#gpio-cells = <2>;
3056ebc063SAnatolij Gustschin			gpio-controller;
3156ebc063SAnatolij Gustschin			fsl,has-wdt;
3256ebc063SAnatolij Gustschin			fsl,wdt-on-boot = <0>;
3356ebc063SAnatolij Gustschin		};
3456ebc063SAnatolij Gustschin
3556ebc063SAnatolij Gustschin		timer@610 {
3656ebc063SAnatolij Gustschin			#gpio-cells = <2>;
3756ebc063SAnatolij Gustschin			gpio-controller;
3856ebc063SAnatolij Gustschin		};
3956ebc063SAnatolij Gustschin
4056ebc063SAnatolij Gustschin		timer7: timer@670 {
4156ebc063SAnatolij Gustschin		};
4256ebc063SAnatolij Gustschin
4356ebc063SAnatolij Gustschin		rtc@800 {
4456ebc063SAnatolij Gustschin			status = "disabled";
4556ebc063SAnatolij Gustschin		};
4656ebc063SAnatolij Gustschin
4756ebc063SAnatolij Gustschin		psc@2000 {		// PSC1
4856ebc063SAnatolij Gustschin			compatible = "fsl,mpc5200b-psc-spi","fsl,mpc5200-psc-spi";
4956ebc063SAnatolij Gustschin			#address-cells = <1>;
5056ebc063SAnatolij Gustschin			#size-cells = <0>;
5156ebc063SAnatolij Gustschin			cell-index = <0>;
5256ebc063SAnatolij Gustschin
5356ebc063SAnatolij Gustschin			spidev@0 {
5456ebc063SAnatolij Gustschin				compatible = "spidev";
5556ebc063SAnatolij Gustschin				spi-max-frequency = <250000>;
5656ebc063SAnatolij Gustschin				reg = <0>;
5756ebc063SAnatolij Gustschin			};
5856ebc063SAnatolij Gustschin		};
5956ebc063SAnatolij Gustschin
6056ebc063SAnatolij Gustschin		psc@2200 {		// PSC2
6156ebc063SAnatolij Gustschin			status = "disabled";
6256ebc063SAnatolij Gustschin		};
6356ebc063SAnatolij Gustschin
6456ebc063SAnatolij Gustschin		psc@2400 {		// PSC3
6556ebc063SAnatolij Gustschin			status = "disabled";
6656ebc063SAnatolij Gustschin		};
6756ebc063SAnatolij Gustschin
6856ebc063SAnatolij Gustschin		psc@2600 {		// PSC4
6956ebc063SAnatolij Gustschin			compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
7056ebc063SAnatolij Gustschin		};
7156ebc063SAnatolij Gustschin
7256ebc063SAnatolij Gustschin		psc@2800 {		// PSC5
7356ebc063SAnatolij Gustschin			compatible = "fsl,mpc5200b-psc-uart","fsl,mpc5200-psc-uart";
7456ebc063SAnatolij Gustschin		};
7556ebc063SAnatolij Gustschin
7656ebc063SAnatolij Gustschin		psc@2c00 {		// PSC6
7756ebc063SAnatolij Gustschin			status = "disabled";
7856ebc063SAnatolij Gustschin		};
7956ebc063SAnatolij Gustschin
8056ebc063SAnatolij Gustschin		ethernet@3000 {
8156ebc063SAnatolij Gustschin			phy-handle = <&phy0>;
8256ebc063SAnatolij Gustschin		};
8356ebc063SAnatolij Gustschin
8456ebc063SAnatolij Gustschin		mdio@3000 {
8556ebc063SAnatolij Gustschin			phy0: ethernet-phy@0 {
8656ebc063SAnatolij Gustschin				reg = <0>;
8756ebc063SAnatolij Gustschin			};
8856ebc063SAnatolij Gustschin		};
8956ebc063SAnatolij Gustschin
9056ebc063SAnatolij Gustschin		sclpc@3c00 {
9156ebc063SAnatolij Gustschin			compatible = "fsl,mpc5200-lpbfifo";
9256ebc063SAnatolij Gustschin			reg = <0x3c00 0x60>;
9356ebc063SAnatolij Gustschin			interrupts = <3 23 0>;
9456ebc063SAnatolij Gustschin		};
9556ebc063SAnatolij Gustschin	};
9656ebc063SAnatolij Gustschin
9756ebc063SAnatolij Gustschin	localbus {
9856ebc063SAnatolij Gustschin		ranges = <0 0 0xff000000 0x01000000
9956ebc063SAnatolij Gustschin			  3 0 0xe3000000 0x00100000>;
10056ebc063SAnatolij Gustschin
10156ebc063SAnatolij Gustschin		// flash device at LocalPlus Bus CS0
10256ebc063SAnatolij Gustschin		flash@0,0 {
10356ebc063SAnatolij Gustschin			compatible = "cfi-flash";
10456ebc063SAnatolij Gustschin			reg = <0 0 0x01000000>;
10556ebc063SAnatolij Gustschin			bank-width = <1>;
10656ebc063SAnatolij Gustschin			device-width = <2>;
10756ebc063SAnatolij Gustschin			#size-cells = <1>;
10856ebc063SAnatolij Gustschin			#address-cells = <1>;
10956ebc063SAnatolij Gustschin			no-unaligned-direct-access;
11056ebc063SAnatolij Gustschin
11156ebc063SAnatolij Gustschin			/* common layout for all machines */
11256ebc063SAnatolij Gustschin			partition@0 {
11356ebc063SAnatolij Gustschin				label = "u-boot";
11456ebc063SAnatolij Gustschin				reg = <0x00000000 0x00040000>;
11556ebc063SAnatolij Gustschin				read-only;
11656ebc063SAnatolij Gustschin			};
11756ebc063SAnatolij Gustschin			partition@40000 {
11856ebc063SAnatolij Gustschin				label = "env";
11956ebc063SAnatolij Gustschin				reg = <0x00040000 0x00020000>;
12056ebc063SAnatolij Gustschin				read-only;
12156ebc063SAnatolij Gustschin			};
12256ebc063SAnatolij Gustschin		};
12356ebc063SAnatolij Gustschin
12456ebc063SAnatolij Gustschin		csi@3,0 {
12556ebc063SAnatolij Gustschin			compatible = "ifm,o2d-csi";
12656ebc063SAnatolij Gustschin			reg = <3 0 0x00100000>;
12756ebc063SAnatolij Gustschin			ifm,csi-clk-handle = <&timer7>;
12856ebc063SAnatolij Gustschin			gpios = <&gpio_simple 23 0	/* imag_capture */
12956ebc063SAnatolij Gustschin				 &gpio_simple 26 0	/* imag_reset */
13056ebc063SAnatolij Gustschin				 &gpio_simple 29 0>;	/* imag_master_en */
13156ebc063SAnatolij Gustschin
13256ebc063SAnatolij Gustschin			interrupts = <1 1 2>;		/* IRQ1, edge falling */
13356ebc063SAnatolij Gustschin
13456ebc063SAnatolij Gustschin			ifm,csi-addr-bus-width = <24>;
13556ebc063SAnatolij Gustschin			ifm,csi-data-bus-width = <8>;
13656ebc063SAnatolij Gustschin			ifm,csi-wait-cycles = <0>;
13756ebc063SAnatolij Gustschin		};
13856ebc063SAnatolij Gustschin	};
13956ebc063SAnatolij Gustschin};
140