/*
 * SAMSUNG SMDK5250 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/ "exynos5250.dtsi"

/ {
	model = "SAMSUNG SMDK5250 board based on EXYNOS5250";
	compatible = "samsung,smdk5250", "samsung,exynos5250";

	memory {
		reg = <0x40000000 0x80000000>;
	};

	chosen {
		bootargs = "root=/dev/ram0 rw ramdisk=8192 console=ttySAC1,115200";
	};

	i2c@12C60000 {
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <20000>;
		gpios = <&gpb3 0 2 3 0>,
			<&gpb3 1 2 3 0>;

		eeprom@50 {
			compatible = "samsung,s524ad0xd1";
			reg = <0x50>;
		};
	};

	i2c@12C70000 {
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-max-bus-freq = <20000>;
		gpios = <&gpb3 2 2 3 0>,
			<&gpb3 3 2 3 0>;

		eeprom@51 {
			compatible = "samsung,s524ad0xd1";
			reg = <0x51>;
		};
	};

	i2c@12C80000 {
		status = "disabled";
	};

	i2c@12C90000 {
		status = "disabled";
	};

	i2c@12CA0000 {
		status = "disabled";
	};

	i2c@12CB0000 {
		status = "disabled";
	};

	i2c@12CC0000 {
		status = "disabled";
	};

	i2c@12CD0000 {
		status = "disabled";
	};
};
