/*
 * SAMSUNG SSDK5440 board device tree source
 *
 * Copyright (c) 2012 Samsung Electronics Co., Ltd.
 *		http://www.samsung.com
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 as
 * published by the Free Software Foundation.
*/

/dts-v1/;
#include "exynos5440.dtsi"

/ {
	model = "SAMSUNG SSDK5440 board based on EXYNOS5440";
	compatible = "samsung,ssdk5440", "samsung,exynos5440", "samsung,exynos5";

	chosen {
		bootargs = "root=/dev/sda2 rw rootwait ignore_loglevel earlyprintk no_console_suspend mem=2048M@0x80000000 mem=6144M@0x100000000 console=ttySAC0,115200";
	};

	spi_0: spi@D0000 {

		flash: w25q128@0 {
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "winbond,w25q128";
			spi-max-frequency = <15625000>;
			reg = <0>;
			controller-data {
				samsung,spi-feedback-delay = <0>;
			};

			partition@00000 {
				label = "BootLoader";
				reg = <0x60000 0x80000>;
				read-only;
			};

			partition@e0000 {
				label = "Recovery-Kernel";
				reg = <0xe0000 0x300000>;
				read-only;
			};

			partition@3e0000 {
				label = "CRAM-FS";
				reg = <0x3e0000 0x700000>;
				read-only;
			};

			partition@ae0000 {
				label = "User-Data";
				reg = <0xae0000 0x520000>;
			};

		};

	};

	fixed-rate-clocks {
		xtal {
			compatible = "samsung,clock-xtal";
			clock-frequency = <50000000>;
		};
	};

	pcie@290000 {
		reset-gpio = <&pin_ctrl 5 0>;
		status = "okay";
	};

	pcie@2a0000 {
		reset-gpio = <&pin_ctrl 22 0>;
		status = "okay";
	};
};
