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

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

/ {
	model = "Samsung Trats2 based on Exynos4412";
	compatible = "samsung,trats2", "samsung,exynos4412";

	config {
		samsung,dsim-device-name = "s6e8ax0";
	};

	aliases {
		i2c0 = "/i2c@13860000";
		i2c1 = "/i2c@13870000";
		i2c2 = "/i2c@13880000";
		i2c3 = "/i2c@13890000";
		i2c4 = "/i2c@138a0000";
		i2c5 = "/i2c@138b0000";
		i2c6 = "/i2c@138c0000";
		i2c7 = "/i2c@138d0000";
		i2c8 = &i2c_fg;
		i2c9 = &i2c_max77693;
		serial0 = "/serial@13800000";
		console = "/serial@13820000";
		mmc0 = &mshc_0;
		mmc1 = &sdhci2;
	};

	i2c_fg: fuel-gauge {
		compatible = "i2c-gpio";
		gpios = <&gpf1 5 0>,	/* sda */
			<&gpf1 4 0>;	/* scl */
		i2c-gpio,delay-us = <2>;        /* ~100 kHz */
		status = "okay";
	};

	i2c_max77693: max77693 {
		compatible = "i2c-gpio";
		gpio = <&gpm2 0 0>,	/* sda */
		       <&gpm2 1 0>;	/* scl */
		i2c-gpio,delay-us = <2>;        /* ~100 kHz */
		status = "okay";
	};

	i2c@138d0000 {
		samsung,i2c-sda-delay = <100>;
		samsung,i2c-slave-addr = <0x10>;
		samsung,i2c-max-bus-freq = <100000>;
		status = "okay";

		max77686_pmic@09 {
			compatible = "maxim,max77686";
			interrupts = <7 0>;
			reg = <0x09 0 0>;
			#clock-cells = <1>;

			voltage-regulators {
				ldo1_reg: LDO1 {
					regulator-compatible = "LDO1";
					regulator-name = "VALIVE_1.0V_AP";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo2_reg: LDO2 {
					regulator-compatible = "LDO2";
					regulator-name = "VM1M2_1.2V_AP";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo3_reg: LDO3 {
					regulator-compatible = "LDO3";
					regulator-name = "VCC_1.8V_AP";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo4_reg: LDO4 {
					regulator-compatible = "LDO4";
					regulator-name = "VCC_2.8V_AP";
					regulator-min-microvolt = <2800000>;
					regulator-max-microvolt = <2800000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo5_reg: LDO5 {
					regulator-compatible = "LDO5";
					regulator-name = "VCC_1.8V_IO";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo6_reg: LDO6 {
					regulator-compatible = "LDO6";
					regulator-name = "VMPLL_1.0V_AP";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo7_reg: LDO7 {
					regulator-compatible = "LDO7";
					regulator-name = "VPLL_1.0V_AP";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-always-on;
					regulator-mem-on;
				};

				ldo8_reg: LDO8 {
					regulator-compatible = "LDO8";
					regulator-name = "VMIPI_1.0V";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-mem-off;
				};

				ldo9_reg: LDO9 {
					regulator-compatible = "LDO9";
					regulator-name = "CAM_ISP_MIPI_1.2V";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-mem-idle;
				};

				ldo10_reg: LDO10 {
					regulator-compatible = "LDO10";
					regulator-name = "VMIPI_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-off;
				};

				ldo11_reg: LDO11 {
					regulator-compatible = "LDO11";
					regulator-name = "VABB1_1.95V";
					regulator-min-microvolt = <1950000>;
					regulator-max-microvolt = <1950000>;
					regulator-always-on;
					regulator-mem-off;
				};

				ldo12_reg: LDO12 {
					regulator-compatible = "LDO12";
					regulator-name = "VUOTG_3.0V";
					regulator-min-microvolt = <3000000>;
					regulator-max-microvolt = <3000000>;
					regulator-mem-off;
				};

				ldo13_reg: LDO13 {
					regulator-compatible = "LDO13";
					regulator-name = "NFC_AVDD_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-idle;
				};

				ldo14_reg: LDO14 {
					regulator-compatible = "LDO14";
					regulator-name = "VABB2_1.95V";
					regulator-min-microvolt = <1950000>;
					regulator-max-microvolt = <1950000>;
					regulator-always-on;
					regulator-mem-off;
				};

				ldo15_reg: LDO15 {
					regulator-compatible = "LDO15";
					regulator-name = "VHSIC_1.0V";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1000000>;
					regulator-mem-off;
				};

				ldo16_reg: LDO16 {
					regulator-compatible = "LDO16";
					regulator-name = "VHSIC_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-off;
				};

				ldo17_reg: LDO17 {
					regulator-compatible = "LDO17";
					regulator-name = "CAM_SENSOR_CORE_1.2V";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-mem-idle;
				};

				ldo18_reg: LDO18 {
					regulator-compatible = "LDO18";
					regulator-name = "CAM_ISP_SEN_IO_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-idle;
				};

				ldo19_reg: LDO19 {
					regulator-compatible = "LDO19";
					regulator-name = "VT_CAM_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-idle;
				};

				ldo20_reg: LDO20 {
					regulator-compatible = "LDO20";
					regulator-name = "VDDQ_PRE_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-idle;
				};

				ldo21_reg: LDO21 {
					regulator-compatible = "LDO21";
					regulator-name = "VTF_2.8V";
					regulator-min-microvolt = <2800000>;
					regulator-max-microvolt = <2800000>;
					regulator-mem-idle;
				};

				ldo22_reg: LDO22 {
					regulator-compatible = "LDO22";
					regulator-name = "VMEM_VDD_2.8V";
					regulator-min-microvolt = <2800000>;
					regulator-max-microvolt = <2800000>;
					regulator-always-on;
					regulator-mem-off;
				};

				ldo23_reg: LDO23 {
					regulator-compatible = "LDO23";
					regulator-name = "TSP_AVDD_3.3V";
					regulator-min-microvolt = <3300000>;
					regulator-max-microvolt = <3300000>;
					regulator-mem-idle;
				};

				ldo24_reg: LDO24 {
					regulator-compatible = "LDO24";
					regulator-name = "TSP_VDD_1.8V";
					regulator-min-microvolt = <1800000>;
					regulator-max-microvolt = <1800000>;
					regulator-mem-idle;
				};

				ldo25_reg: LDO25 {
					regulator-compatible = "LDO25";
					regulator-name = "LCD_VCC_3.3V";
					regulator-min-microvolt = <2800000>;
					regulator-max-microvolt = <2800000>;
					regulator-mem-idle;
				};

				ldo26_reg: LDO26 {
					regulator-compatible = "LDO26";
					regulator-name = "MOTOR_VCC_3.0V";
					regulator-min-microvolt = <3000000>;
					regulator-max-microvolt = <3000000>;
					regulator-mem-idle;
				};

				buck1_reg: BUCK1 {
					regulator-compatible = "BUCK1";
					regulator-name = "vdd_mif";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1100000>;
					regulator-always-on;
					regulator-boot-on;
					regulator-mem-off;
				};

				buck2_reg: BUCK2 {
					regulator-compatible = "BUCK2";
					regulator-name = "vdd_arm";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1500000>;
					regulator-always-on;
					regulator-boot-on;
					regulator-mem-off;
				};

				buck3_reg: BUCK3 {
					regulator-compatible = "BUCK3";
					regulator-name = "vdd_int";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1150000>;
					regulator-always-on;
					regulator-boot-on;
					regulator-mem-off;
				};

				buck4_reg: BUCK4 {
					regulator-compatible = "BUCK4";
					regulator-name = "vdd_g3d";
					regulator-min-microvolt = <850000>;
					regulator-max-microvolt = <1150000>;
					regulator-boot-on;
					regulator-mem-off;
				};

				buck5_reg: BUCK5 {
					regulator-compatible = "BUCK5";
					regulator-name = "VMEM_1.2V_AP";
					regulator-min-microvolt = <1200000>;
					regulator-max-microvolt = <1200000>;
					regulator-always-on;
				};

				buck6_reg: BUCK6 {
					regulator-compatible = "BUCK6";
					regulator-name = "VCC_SUB_1.35V";
					regulator-min-microvolt = <1350000>;
					regulator-max-microvolt = <1350000>;
					regulator-always-on;
				};

				buck7_reg: BUCK7 {
					regulator-compatible = "BUCK7";
					regulator-name = "VCC_SUB_2.0V";
					regulator-min-microvolt = <2000000>;
					regulator-max-microvolt = <2000000>;
					regulator-always-on;
				};

				buck8_reg: BUCK8 {
					regulator-compatible = "BUCK8";
					regulator-name = "VMEM_VDDF_3.0V";
					regulator-min-microvolt = <2850000>;
					regulator-max-microvolt = <2850000>;
					regulator-always-on;
					regulator-mem-off;
				};

				buck9_reg: BUCK9 {
					regulator-compatible = "BUCK9";
					regulator-name = "CAM_ISP_CORE_1.2V";
					regulator-min-microvolt = <1000000>;
					regulator-max-microvolt = <1200000>;
					regulator-mem-off;
				};
			};
		};
	};

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

		samsung,vl-freq = <60>;
		samsung,vl-col = <720>;
		samsung,vl-row = <1280>;
		samsung,vl-width = <720>;
		samsung,vl-height = <1280>;

		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 = <5>;
		samsung,vl-hbpd = <10>;
		samsung,vl-hfpd = <10>;
		samsung,vl-vspw = <2>;
		samsung,vl-vbpd = <1>;
		samsung,vl-vfpd = <13>;
		samsung,vl-cmd-allow-len = <0xf>;

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

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

	mipidsi@11c80000 {
		compatible = "samsung,exynos-mipi-dsi";
		reg = <0x11c80000 0x5c>;

		samsung,dsim-config-e-interface = <1>;
		samsung,dsim-config-e-virtual-ch = <0>;
		samsung,dsim-config-e-pixel-format = <7>;
		samsung,dsim-config-e-burst-mode = <1>;
		samsung,dsim-config-e-no-data-lane = <3>;
		samsung,dsim-config-e-byte-clk = <0>;
		samsung,dsim-config-hfp = <1>;

		samsung,dsim-config-p = <3>;
		samsung,dsim-config-m = <120>;
		samsung,dsim-config-s = <1>;

		samsung,dsim-config-pll-stable-time = <500>;
		samsung,dsim-config-esc-clk = <20000000>;
		samsung,dsim-config-stop-holding-cnt = <0x7ff>;
		samsung,dsim-config-bta-timeout = <0xff>;
		samsung,dsim-config-rx-timeout = <0xffff>;

		samsung,dsim-device-id = <0xffffffff>;
		samsung,dsim-device-bus-id = <0>;

		samsung,dsim-device-reverse-panel = <1>;
	};

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

&sdhci0 {
	samsung,bus-width = <8>;
	samsung,timing = <1 3 3>;
	pwr-gpios = <&gpk0 4 0>;
	status = "disabled";
};

&sdhci2 {
	samsung,bus-width = <4>;
	samsung,timing = <1 2 3>;
	cd-gpios = <&gpk2 2 0>;
	status = "okay";
};

&mshc_0 {
	samsung,bus-width = <8>;
	samsung,timing = <2 1 0>;
	samsung,removable = <0>;
	fifoth_val = <0x203f0040>;
	bus_hz = <400000000>;
	div = <0x3>;
	index = <4>;
	fifo-depth = <0x80>;
	status = "okay";
};
