/*
 * SAMSUNG SMDK2416 board device tree source
 *
 * Copyright (c) 2013 Heiko Stuebner <heiko@sntech.de>
 *
 * 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 "s3c2416.dtsi"

/ {
	model = "SMDK2416";
	compatible = "samsung,s3c2416";

	memory {
		reg =  <0x30000000 0x4000000>;
	};

	clocks {
		compatible = "simple-bus";
		#address-cells = <1>;
		#size-cells = <1>;

		xti: xti {
			compatible = "fixed-clock";
			clock-frequency = <12000000>;
			clock-output-names = "xti";
			#clock-cells = <0>;
		};
	};

	serial@50000000 {
		status = "okay";
		pinctrl-names = "default";
		pinctrl-0 = <&uart0_data>, <&uart0_fctl>;
	};

	serial@50004000 {
		status = "okay";
		pinctrl-names = "default";
		pinctrl-0 = <&uart1_data>, <&uart1_fctl>;
	};

	serial@50008000 {
		status = "okay";
		pinctrl-names = "default";
		pinctrl-0 = <&uart2_data>;
	};

	serial@5000C000 {
		status = "okay";
		pinctrl-names = "default";
		pinctrl-0 = <&uart3_data>;
	};

	watchdog@53000000 {
		status = "okay";
	};

	rtc@57000000 {
		status = "okay";
	};

	sdhci@4AC00000 {
		pinctrl-names = "default";
		pinctrl-0 = <&sd0_clk>, <&sd0_cmd>,
				<&sd0_bus1>, <&sd0_bus4>;
		bus-width = <4>;
		cd-gpios = <&gpf 1 0>;
		cd-inverted;
		status = "okay";
	};

	sdhci@4A800000 {
		pinctrl-names = "default";
		pinctrl-0 = <&sd1_clk>, <&sd1_cmd>,
				<&sd1_bus1>, <&sd1_bus4>;
		bus-width = <4>;
		broken-cd;
		status = "okay";
	};
};
