/*
 * Samsung's Exynos4210 based Universal C210 board device tree source
 *
 * Copyright (c) 2014 Samsung Electronics Co., Ltd.
 *		http://www.samsung.com
 *
 * SPDX-License-Identifier:	GPL-2.0+
 */

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

/ {
	model = "Samsung Universal C210 based on Exynos4210 rev0";
	compatible = "samsung,universal_c210", "samsung,exynos4210";

	aliases {
		serial0 = "/serial@13800000";
		console = "/serial@13820000";
		mmc0 = "sdhci@12510000";
		mmc2 = "sdhci@12530000";
	};

	sdhci@12510000 {
		samsung,bus-width = <8>;
		samsung,timing = <1 3 3>;
		pwr-gpios = <&gpk0 2 0>;
	};

	sdhci@12520000 {
		status = "disabled";
	};

	sdhci@12530000 {
		samsung,bus-width = <4>;
		samsung,timing = <1 2 3>;
		cd-gpios = <&gpx3 4 0>;
	};

	sdhci@12540000 {
		status = "disabled";
	};

	soft-spi {
		compatible = "u-boot,soft-spi";
		cs-gpio = <&gpy4 3 0>;
		sclk-gpio = <&gpy3 1 0>;
		mosi-gpio = <&gpy3 3 0>;
		miso-gpio = <&gpy3 0 0>;
		spi-delay-us = <1>;
		#address-cells = <1>;
		#size-cells = <0>;
		cs@0 {
		};
	};

	fimd@11c00000 {
		compatible = "samsung,exynos-fimd";
		reg = <0x11c00000 0xa4>;

		samsung,vl-freq = <60>;
		samsung,vl-col = <480>;
		samsung,vl-row = <800>;
		samsung,vl-width = <480>;
		samsung,vl-height = <800>;

		samsung,vl-clkp = <0>;
		samsung,vl-oep = <0>;
		samsung,vl-hsp = <1>;
		samsung,vl-vsp = <1>;
		samsung,vl-dp = <1>;
		samsung,vl-bpix = <4>;

		samsung,vl-hspw = <2>;
		samsung,vl-hbpd = <16>;
		samsung,vl-hfpd = <16>;
		samsung,vl-vspw = <2>;
		samsung,vl-vbpd = <8>;
		samsung,vl-vfpd = <8>;
		samsung,vl-cmd-allow-len = <0xf>;

		samsung,pclk_name = <1>;
		samsung,sclk_div = <1>;

		samsung,winid = <0>;
		samsung,power-on-delay = <10000>;
		samsung,interface-mode = <1>;
		samsung,mipi-enabled = <0>;
		samsung,dp-enabled;
		samsung,dual-lcd-enabled;

		samsung,logo-on = <1>;
		samsung,resolution = <0>;
		samsung,rgb-mode = <0>;
	};
};
