summaryrefslogtreecommitdiff
path: root/patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch')
-rw-r--r--patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch3195
1 files changed, 3195 insertions, 0 deletions
diff --git a/patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch b/patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch
new file mode 100644
index 00000000000..d3084bc89e0
--- /dev/null
+++ b/patches.tizen/1235-ARM-exynos-dts-cleanup-the-dts-file-for-trats2.patch
@@ -0,0 +1,3195 @@
+From 34dc81e8c1185d6d8127ef3cf654c78b752a8ed2 Mon Sep 17 00:00:00 2001
+From: Jaehoon Chung <jh80.chung@samsung.com>
+Date: Mon, 17 Feb 2014 17:28:43 +0900
+Subject: [PATCH 1235/1302] ARM: exynos: dts: cleanup the dts file for trats2
+
+Unused dts file is removed, and trats2.dts file is created.
+It's maintained more better than before.
+
+Change-Id: Ie51a02044a988fd0e2c8deac2c5fd407f5e374da
+Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
+Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
+---
+ arch/arm/boot/dts/Makefile | 5 +-
+ arch/arm/boot/dts/exynos4212-slp_pd.dts | 353 ------
+ arch/arm/boot/dts/exynos4412-m0.dts | 247 -----
+ arch/arm/boot/dts/exynos4412-redwood.dts | 162 ---
+ arch/arm/boot/dts/exynos4412-redwoodlte.dts | 756 -------------
+ arch/arm/boot/dts/exynos4412-trats2.dts | 1601 +++++++++++++++++++++++++++
+ 6 files changed, 1602 insertions(+), 1522 deletions(-)
+ delete mode 100644 arch/arm/boot/dts/exynos4212-slp_pd.dts
+ delete mode 100644 arch/arm/boot/dts/exynos4412-m0.dts
+ delete mode 100644 arch/arm/boot/dts/exynos4412-redwood.dts
+ delete mode 100644 arch/arm/boot/dts/exynos4412-redwoodlte.dts
+ create mode 100644 arch/arm/boot/dts/exynos4412-trats2.dts
+
+diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
+index b17a6dc..ec83818 100644
+--- a/arch/arm/boot/dts/Makefile
++++ b/arch/arm/boot/dts/Makefile
+@@ -50,12 +50,9 @@ dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \
+ exynos4210-smdkv310.dtb \
+ exynos4210-trats.dtb \
+ exynos4210-universal_c210.dtb \
+- exynos4212-slp_pd.dtb \
+- exynos4412-m0.dtb \
++ exynos4412-trats2.dtb \
+ exynos4412-odroidx.dtb \
+ exynos4412-odroidx2.dtb \
+- exynos4412-redwood.dtb \
+- exynos4412-redwoodlte.dtb \
+ exynos4412-smdk4412.dtb \
+ exynos4412-slp_pq.dtb \
+ exynos4412-origen.dtb \
+diff --git a/arch/arm/boot/dts/exynos4212-slp_pd.dts b/arch/arm/boot/dts/exynos4212-slp_pd.dts
+deleted file mode 100644
+index 01a2383..0000000
+--- a/arch/arm/boot/dts/exynos4212-slp_pd.dts
++++ /dev/null
+@@ -1,353 +0,0 @@
+-/*
+- * Samsung's Exynos4412 based SMDK board device tree source
+- *
+- * Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
+- * http://www.samsung.com
+- *
+- * Device tree source file for Samsung's SMDK4412 board which is based on
+- * Samsung's Exynos4412 SoC.
+- *
+- * 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/ "exynos4212.dtsi"
+-
+-/ {
+- model = "Samsung PegasusD evaluation board based on Exynos4212";
+- compatible = "samsung,slp_pd", "samsung,exynos4412";
+-
+- aliases {
+- };
+-
+- memory {
+- reg = <0x40000000 0x40000000>;
+-
+- reserved-memory {
+- #address-cells = <1>;
+- #size-cells = <1>;
+-
+- contig_mem: region@71000000 {
+- compatible = "linux,contiguous-memory-region";
+- reg = <0x71000000 0x0c000000>;
+- linux,default-contiguous-region;
+- };
+- };
+- };
+-
+- chosen {
+- bootargs ="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC1,115200 init=/linuxrc";
+- };
+-
+- vemmc_reg: voltage-regulator@0 {
+- compatible = "regulator-fixed";
+- regulator-name = "VMEM_VDD_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- gpio = <&gpk0 2 0>;
+- enable-active-high;
+- };
+-
+- mshc@12550000 {
+- num-slots = <1>;
+- supports-highspeed;
+- broken-cd;
+- non-removable;
+- fifo-depth = <0x80>;
+- card-detect-delay = <200>;
+- clocks = <&clock 351>, <&clock 132>;
+- clock-name = "biu", "ciu";
+- vmmc-supply = <&vemmc_reg>;
+- clock-frequency = <400000000>;
+- samsung,dw-mshc-ciu-div = <0>;
+- samsung,dw-mshc-sdr-timing = <2 3>;
+- samsung,dw-mshc-ddr-timing = <1 2>;
+- pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
+- pinctrl-names = "default";
+- status = "disabled";
+-
+- slot@0 {
+- reg = <0>;
+- bus-width = <8>;
+- };
+- };
+-
+- sdhci_emmc: sdhci@12510000 {
+- bus-width = <8>;
+- non-removable;
+- pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
+- pinctrl-names = "default";
+- vmmc-supply = <&vemmc_reg>;
+- status = "okay";
+- };
+-
+- sdhci_sd: sdhci@12530000 {
+- bus-width = <4>;
+- cd-gpios = <&gpx3 4 0>;
+- cd-inverted;
+- interrupts = <0 75 0>;
+- pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
+- pinctrl-names = "default";
+- status = "okay";
+- };
+-
+- serial@13800000 {
+- status = "okay";
+- };
+-
+- serial@13810000 {
+- status = "okay";
+- };
+-
+- serial@13820000 {
+- status = "okay";
+- };
+-
+- serial@13830000 {
+- status = "okay";
+- };
+-
+- fixed-rate-clocks {
+- xxti {
+- compatible = "samsung,clock-xxti";
+- clock-frequency = <0>;
+- };
+-
+- xusbxti {
+- compatible = "samsung,clock-xusbxti";
+- clock-frequency = <24000000>;
+- };
+- };
+-
+- i2c@138B0000 {
+- samsung,i2c-sda-delay = <100>;
+- samsung,i2c-slave-addr = <0x10>;
+- samsung,i2c-max-bus-freq = <100000>;
+- pinctrl-0 = <&i2c5_bus>;
+- pinctrl-names = "default";
+- status = "okay";
+-
+- max8997: max8997_pmic@66 {
+- compatible = "maxim,max8997-pmic";
+- interrupt-parent = <&gpx0>;
+- interrupts = <7 0>;
+- reg = <0x66>;
+-
+- max8997,pmic-buck1-uses-gpio-dvs;
+- max8997,pmic-buck2-uses-gpio-dvs;
+- max8997,pmic-buck5-uses-gpio-dvs;
+-
+- max8997,pmic-ignore-gpiodvs-side-effect;
+- max8997,pmic-buck125-default-dvs-idx = <0>;
+-
+- max8997,pmic-buck125-dvs-gpios = <&gpj1 1 0>,
+- <&gpj1 2 0>,
+- <&gpl0 0 0>;
+-
+- max8997,pmic-buck1-dvs-voltage = <1350000>, <1300000>,
+- <1250000>, <1200000>,
+- <1150000>, <1100000>,
+- <1000000>, <950000>;
+-
+- max8997,pmic-buck2-dvs-voltage = <1100000>, <1000000>,
+- <950000>, <900000>,
+- <1100000>, <1000000>,
+- <950000>, <900000>;
+-
+- max8997,pmic-buck5-dvs-voltage = <1200000>, <1200000>,
+- <1200000>, <1200000>,
+- <1200000>, <1200000>,
+- <1200000>, <1200000>;
+-
+- regulators {
+-
+- ldo1_reg: LDO1 {
+- regulator-name = "VMIPI_1.8V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo2_reg: LDO2 {
+- regulator-name = "VALIVE_1.0A_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo3_reg: LDO3 {
+- regulator-name = "VMPLL_1.0V_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo4_reg: LDO4 {
+- regulator-name = "VABB02_1.8V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo5_reg: LDO5 {
+- regulator-name = "VABB1_1.8V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo6_reg: LDO6 {
+- regulator-name = "VCC_1.8V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo7_reg: LDO7 {
+- regulator-name = "CAM_ISP_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo8_reg: LDO8 {
+- regulator-name = "VUOTG_3.0V_AP";
+- regulator-min-microvolt = <3000000>;
+- regulator-max-microvolt = <3000000>;
+- };
+-
+- ldo9_reg: LDO9 {
+- regulator-name = "VCC_2.8V_AP";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- };
+-
+- ldo10_reg: LDO10 {
+- regulator-name = "VPLL_1.0V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo11_reg: LDO11 {
+- regulator-name = "VMIPI_1.0V_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- };
+-
+- ldo12_reg: LDO12 {
+- regulator-name = "VT_CAM_1.8";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo13_reg: LDO13 {
+- regulator-name = "VCC_3.3V_LCD";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- };
+-
+- ldo14_reg: LDO14 {
+- regulator-name = "VCC_1.8V_IO";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo15_reg: LDO15 {
+- regulator-name = "LCD_VDD_2.2V";
+- regulator-min-microvolt = <2200000>;
+- regulator-max-microvolt = <2200000>;
+- };
+-
+- ldo16_reg: LDO16 {
+- regulator-name = "CAM_SENSOR_IO_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo17_reg: LDO17 {
+- regulator-name = "CAM_AF_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- regulator-mem-idle;
+- };
+-
+- ldo18_reg: LDO18 {
+- regulator-name = "TSP_AVDD_3.3V";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- };
+-
+- vddq_reg: LDO21 {
+- regulator-name = "VM1M2_1.2V_AP";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- regulator-always-on;
+- };
+-
+- buck1_reg: BUCK1 {
+- regulator-name = "vdd_arm";
+- regulator-min-microvolt = <900000>;
+- regulator-max-microvolt = <1350000>;
+- regulator-always-on;
+- };
+-
+- buck2_reg: BUCK2 {
+- regulator-name = "vdd_int";
+- regulator-min-microvolt = <900000>;
+- regulator-max-microvolt = <1100000>;
+- regulator-always-on;
+- };
+-
+- buck3_reg: BUCK3 {
+- regulator-name = "VG3D_1.0V_AP";
+- regulator-min-microvolt = <850000>;
+- regulator-max-microvolt = <1100000>;
+- regulator-always-on;
+- };
+-
+- buck4_reg: BUCK4 {
+- regulator-name = "CAM_ISO_CORE_1.2V";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- };
+-
+- safe1_sreg: ESAFEOUT1 {
+- regulator-name = "SAFEOUT1";
+- regulator-always-on;
+- };
+-
+- safe2_sreg: ESAFEOUT2 {
+- regulator-name = "SAFEOUT2";
+- regulator-boot-on;
+- };
+-
+- };
+- };
+- };
+-
+- hsotg@12480000 {
+- status = "okay";
+- vusb_d-supply = <&ldo8_reg>;
+- vusb_a-supply = <&ldo11_reg>;
+- };
+-
+- exynos-usbphy@125B0000 {
+- status = "okay";
+- };
+-
+- cpufreq {
+- freq_table;
+- volt_table = <1350000 1300000 1300000 1250000 1250000 1200000
+- 1200000 1150000 1100000 1000000 1000000 950000
+- 950000 950000>;
+- status = "okay";
+- };
+-
+- tmu@100C0000 {
+- vtmu-supply = <&ldo4_reg>;
+- status = "okay";
+- };
+-};
+diff --git a/arch/arm/boot/dts/exynos4412-m0.dts b/arch/arm/boot/dts/exynos4412-m0.dts
+deleted file mode 100644
+index 9aefa58..0000000
+--- a/arch/arm/boot/dts/exynos4412-m0.dts
++++ /dev/null
+@@ -1,247 +0,0 @@
+-/*
+- * Samsung's Exynos4412 based M0 board device tree source
+- *
+- * Copyright (c) 2012 Samsung Electronics Co., Ltd.
+- * http://www.samsung.com
+- *
+- * Device tree source file for Samsung's M0 board which is based on
+- * Samsung's Exynos4412 SoC.
+- *
+- * 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.
+-*/
+-
+-/include/ "exynos4412-slp_pq.dts"
+-
+-/ {
+- model = "Samsung M0 based on Exynos4412";
+- compatible = "samsung,m0", "samsung,exynos4412";
+-
+- aliases {
+- i2c20 = &i2c_touch_key;
+- i2c21 = &i2c_cm36651;
+- };
+-
+- pinctrl@11400000 {
+- vt_cam_id: vt-cam-id {
+- samsung,pins = "gpf1-2";
+- samsung,pin-function = <2>;
+- samsung,pin-pud = <1>;
+- samsung,pin-drv = <3>;
+- };
+- };
+-
+- gpio-keys@0 {
+- compatible = "gpio-keys";
+-
+- key@114 {
+- interrupt-parent = <&gpx3>;
+- interrupts = <3 0>;
+- gpios = <&gpx3 3 1>;
+- linux,code = <114>;
+- label = "volume down";
+- debounce-interval = <10>;
+- };
+-
+- key@115 {
+- interrupt-parent = <&gpx2>;
+- interrupts = <2 0>;
+- gpios = <&gpx2 2 1>;
+- linux,code = <115>;
+- label = "volume up";
+- debounce-interval = <10>;
+- };
+-
+- key@116 {
+- interrupt-parent = <&gpx2>;
+- interrupts = <7 0>;
+- gpios = <&gpx2 7 1>;
+- linux,code = <116>;
+- label = "power";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+-
+- key@139 {
+- interrupt-parent = <&gpx0>;
+- interrupts = <1 0>;
+- gpios = <&gpx0 1 1>;
+- linux,code = <139>;
+- label = "ok";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+- };
+-
+- i2c_touch_key: i2c-gpio-3 {
+- compatible = "i2c-gpio";
+- gpios = <&gpl0 2 0>, <&gpl0 1 0>;
+- i2c-gpio,delay-us = <2>;
+- #address-cells = <1>;
+- #size-cells = <0>;
+- status = "okay";
+-
+- touch_key@20 {
+- compatible = "mcs5080_touchkey";
+- reg = <0x20>;
+- interrupt-parent = <&gpj0>;
+- interrupts = <3 0>;
+- key_maxval = <2>;
+- linux,code = <0x0000009e /* KEY_BACK */
+- 0x000000a9>; /* KEY_MENU */
+- };
+- };
+-
+- i2c_cm36651: i2c-gpio-2 {
+- compatible = "i2c-gpio";
+- gpios = <&gpf0 0 0>, <&gpf0 1 0>;
+- i2c-gpio,delay-us = <2>;
+- #address-cells = <1>;
+- #size-cells = <0>;
+- status = "okay";
+-
+- cm36651@18 {
+- compatible = "cm36651";
+- reg = <0x18>;
+- interrupt-parent = <&gpx0>;
+- interrupts = <2 0>;
+- vled-supply = <&ps_als_reg>;
+- };
+- };
+-
+- camera {
+- status = "okay";
+-
+- pinctrl-names = "default";
+- pinctrl-0 = <&cam_port_a_clk_active &cam_port_b_clk_active>;
+-
+- fimc_0: fimc@11800000 {
+- clock-frequency = <160000000>;
+- status = "okay";
+- };
+-
+- fimc_1: fimc@11810000 {
+- clock-frequency = <160000000>;
+- status = "okay";
+- };
+-
+- fimc_2: fimc@11820000 {
+- clock-frequency = <160000000>;
+- status = "okay";
+- };
+-
+- fimc_3: fimc@11830000 {
+- clock-frequency = <160000000>;
+- status = "okay";
+- };
+-
+- csis_0: csis@11880000 {
+- status = "okay";
+- vddcore-supply = <&ldo8_reg>;
+- vddio-supply = <&ldo10_reg>;
+- clock-frequency = <160000000>;
+- #address-cells = <1>;
+- #size-cells = <0>;
+-
+- /* Camera C (3) MIPI CSI-2 (CSIS0) */
+- port@3 {
+- reg = <3>;
+- csis0_ep: endpoint {
+- remote-endpoint = <&s5c73m3_ep>;
+- data-lanes = <1 2 3 4>;
+- samsung,csis-hs-settle = <12>;
+- samsung,csis-wclk;
+- };
+- };
+- };
+-
+- csis_1: csis@11890000 {
+- status = "okay";
+- vddcore-supply = <&ldo8_reg>;
+- vddio-supply = <&ldo10_reg>;
+- clock-frequency = <160000000>;
+- #address-cells = <1>;
+- #size-cells = <0>;
+-
+- /* Camera D (4) MIPI CSI-2 (CSIS1) */
+- port@4 {
+- reg = <4>;
+- csis1_ep: endpoint {
+- remote-endpoint = <&is_s5k6a3_ep>;
+- data-lanes = <1>;
+- samsung,csis-hs-settle = <18>;
+- samsung,csis-wclk;
+- };
+- };
+- };
+-
+- fimc-is@12000000 {
+- linux,contiguous-region = <&fimc_mem>;
+- status = "okay";
+- pinctrl-0 = <&fimc_is_uart>;
+- pinctrl-names = "default";
+-
+- fimc_lite_0: fimc-lite@12390000 {
+- status = "okay";
+- };
+-
+- fimc_lite_1: fimc-lite@123A0000 {
+- status = "okay";
+- };
+-
+- i2c1_isp: i2c-isp@12140000 {
+- pinctrl-0 = <&fimc_is_i2c1>;
+- pinctrl-names = "default";
+-
+- s5k6a3@10 {
+- compatible = "samsung,s5k6a3";
+- reg = <0x10>;
+- svdda-supply = <&cam_io_reg>;
+- svddio-supply = <&ldo19_reg>;
+- gpios = <&gpm1 6 0>;
+- pinctrl-names = "default";
+- pinctrl-0 = <&vt_cam_id>;
+- clocks = <&camera 1>; /* CAM_B_CLKOUT */
+- clock-names = "extclk";
+- clock-frequency = <24000000>;
+- port {
+- is_s5k6a3_ep: endpoint {
+- remote-endpoint = <&csis1_ep>;
+- data-lanes = <1>;
+- };
+- };
+- };
+- };
+- };
+- };
+-
+- cpufreq {
+- freq_table = <1400000 1300000 1200000 1100000 1000000
+- 900000 800000 700000 600000 500000 400000 300000
+- 200000>;
+- boost_freq = <1500000>;
+- };
+-
+- thermistor-ap@0 {
+- compatible = "ntc,ncp03wb473";
+- status = "ok";
+- pullup-uv = <1800000>;
+- pullup-ohm = <100000>;
+- pulldown-ohm = <100000> ;
+- io-channels = <&adc 1>;
+- };
+-
+- thermistor-batt@0 {
+- compatible = "ntc,ncp03wb473";
+- status = "ok";
+- pullup-uv = <1800000>;
+- pullup-ohm = <100000>;
+- pulldown-ohm = <100000> ;
+- io-channels = <&adc 2>;
+- };
+-
+- rtc@10070000 {
+- status = "okay";
+- };
+-};
+diff --git a/arch/arm/boot/dts/exynos4412-redwood.dts b/arch/arm/boot/dts/exynos4412-redwood.dts
+deleted file mode 100644
+index 09cf22c..0000000
+--- a/arch/arm/boot/dts/exynos4412-redwood.dts
++++ /dev/null
+@@ -1,162 +0,0 @@
+-/*
+- * Samsung's Exynos4412 based board device tree source
+- *
+- * Copyright (c) 2012 Samsung Electronics Co., Ltd.
+- * http://www.samsung.com
+- *
+- * Device tree source file for Samsung's Redwood board which is based on
+- * Samsung's Exynos4412 SoC.
+- *
+- * 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.
+-*/
+-
+-/include/ "exynos4412-slp_pq.dts"
+-
+-/ {
+- model = "Samsung Redwood based on Exynos4412";
+- compatible = "samsung,redwood", "samsung,exynos4412";
+-
+- chosen {
+- bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
+- };
+-
+- sdhci_emmc: sdhci@12510000 {
+- bus-width = <8>;
+- non-removable;
+- pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
+- pinctrl-names = "default";
+- vmmc-supply = <&vemmc_reg>;
+- status = "okay";
+- };
+-
+- gpio-keys@0 {
+- compatible = "gpio-keys";
+-
+- key@114 {
+- interrupt-parent = <&gpx3>;
+- interrupts = <3 0>;
+- gpios = <&gpx3 3 1>;
+- linux,code = <114>;
+- label = "volume down";
+- debounce-interval = <10>;
+- };
+-
+- key@115 {
+- interrupt-parent = <&gpx2>;
+- interrupts = <2 0>;
+- gpios = <&gpx2 2 1>;
+- linux,code = <115>;
+- label = "volume up";
+- debounce-interval = <10>;
+- };
+-
+- key@116 {
+- interrupt-parent = <&gpx2>;
+- interrupts = <7 0>;
+- gpios = <&gpx2 7 1>;
+- linux,code = <116>;
+- label = "power";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+-
+- key@139 {
+- interrupt-parent = <&gpx0>;
+- interrupts = <1 0>;
+- gpios = <&gpx0 1 1>;
+- linux,code = <139>;
+- label = "menu";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+- };
+-
+- lcd_vdd_reg: voltage-regulator@1 {
+- compatible = "regulator-fixed";
+- regulator-name = "LCD_VDD_5.0V";
+- regulator-min-microvolt = <5000000>;
+- regulator-max-microvolt = <5000000>;
+- gpio = <&gpm0 0 0>;
+- enable-active-high;
+- };
+-
+- fimd0_lcd: panel {
+- compatible = "samsung,s6d6aa1";
+- reset-gpio = <&gpf2 1 0>;
+- reset-delay = <100>;
+- power-on-delay= <50>;
+- vdd-supply = <&lcd_vdd_reg>;
+- vddi-supply = <&ldo5_reg>;
+- video-source = <&dsi_0>;
+- flip-horizontal;
+- flip-vertical;
+- samsung,panel-width-mm = <59>; /* FIXME */
+- samsung,panel-height-mm = <105>; /* FIXME */
+-
+- display-timings {
+- native-mode = <&timing0>;
+-
+- timing0: timing-0 {
+- clock-frequency = <0>;
+- hactive = <720>;
+- vactive = <1280>;
+- hfront-porch = <60>;
+- hback-porch = <60>;
+- hsync-len = <3>;
+- vfront-porch = <36>;
+- vback-porch = <2>;
+- vsync-len = <2>;
+- };
+- };
+- };
+-
+- dsi_0: dsi@11C80000 {
+- samsung,pll-stable-time = <500>;
+- samsung,stop-holding-count = <0x7ff>;
+- samsung,bta-timeout = <0xff>;
+- samsung,rx-timeout = <0xffff>;
+- samsung,pll-clk-freq = <24000000>;
+- samsung,cmd-allow = <0xf>;
+- vdd11-supply = <&ldo8_reg>;
+- vdd18-supply = <&ldo10_reg>;
+- status = "okay";
+- };
+-
+- fimd@11c00000 {
+- samsung,fimd-display = <&fimd0_lcd>;
+- samsung,fimd-vidout-rgb;
+- samsung,fimd-inv-vclk;
+- samsung,fimd-frame-rate = <60>;
+- samsung,default-window = <3>;
+- samsung,fimd-win-bpp = <32>;
+- status = "okay";
+- };
+-
+- rotator: rotator@12810000 {
+- status = "okay";
+- };
+-
+- cpufreq {
+- freq_table;
+- status = "okay";
+- };
+-
+- ehci@12580000 {
+- status = "okay";
+- };
+-
+-
+-};
+-
+-&pinctrl_1 {
+- modem_state_active: modem-state-active {
+- samsung,pins = "gpx1-6", "gpx1-1", "gpx1-2";
+- samsung,pin-pud = <0>;
+- };
+- modem_state_off: modem-state-off {
+- samsung,pins = "gpx1-6", "gpx1-1", "gpx1-2";
+- samsung,pin-pud = <1>;
+- };
+-};
+diff --git a/arch/arm/boot/dts/exynos4412-redwoodlte.dts b/arch/arm/boot/dts/exynos4412-redwoodlte.dts
+deleted file mode 100644
+index da1e7df..0000000
+--- a/arch/arm/boot/dts/exynos4412-redwoodlte.dts
++++ /dev/null
+@@ -1,756 +0,0 @@
+-/*
+- * Samsung's Exynos4412 based board device tree source
+- *
+- * Copyright (c) 2012 Samsung Electronics Co., Ltd.
+- * http://www.samsung.com
+- *
+- * Device tree source file for Samsung's Redwood board which is based on
+- * Samsung's Exynos4412 SoC.
+- *
+- * 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/ "exynos4412.dtsi"
+-
+-/ {
+- model = "Samsung Redwood based on Exynos4412";
+- compatible = "samsung,redwood", "samsung,exynos4412";
+-
+- memory {
+- reg = <0x40000000 0x10000000
+- 0x50000000 0x10000000
+- 0x60000000 0x10000000
+- 0x70000000 0x10000000>;
+-
+- reserved-memory {
+- #address-cells = <1>;
+- #size-cells = <1>;
+-
+- contig_mem: region@71000000 {
+- compatible = "linux,contiguous-memory-region";
+- reg = <0x71000000 0x0c000000>;
+- linux,default-contiguous-region;
+- };
+-
+- fimc_mem: region@70000000 {
+- compatible = "linux,contiguous-memory-region", "reserved-memory-region";
+- reg = <0x70000000 0x1000000>;
+- };
+-
+- mfc_l_mem: mfc_l_region@43000000 {
+- compatible = "linux,contiguous-memory-region", "reserved-memory-region";
+- reg = <0x43000000 0x1000000>;
+- };
+-
+- mfc_r_mem: mfc_r_region@51000000 {
+- compatible = "linux,contiguous-memory-region", "reserved-memory-region";
+- reg = <0x51000000 0x1000000>;
+- };
+- };
+- };
+-
+- chosen {
+- bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
+- };
+-
+- firmware@0204F000 {
+- compatible = "samsung,secure-firmware";
+- reg = <0x0204F000 0x1000>;
+- };
+-
+- fixed-rate-clocks {
+- xxti {
+- compatible = "samsung,clock-xxti", "fixed-clock";
+- clock-frequency = <0>;
+- };
+-
+- xusbxti {
+- compatible = "samsung,clock-xusbxti", "fixed-clock";
+- clock-frequency = <24000000>;
+- };
+- };
+-
+- vemmc_reg: voltage-regulator@0 {
+- compatible = "regulator-fixed";
+- regulator-name = "VMEM_VDD_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- gpio = <&gpk0 2 0>;
+- enable-active-high;
+- };
+-
+- sdhci_emmc: sdhci@12510000 {
+- bus-width = <8>;
+- non-removable;
+- pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>;
+- pinctrl-names = "default";
+- vmmc-supply = <&vemmc_reg>;
+- status = "okay";
+- };
+-
+- serial@13800000 {
+- status = "okay";
+- };
+-
+- serial@13810000 {
+- status = "okay";
+- };
+-
+- serial@13820000 {
+- status = "okay";
+- };
+-
+- serial@13830000 {
+- status = "okay";
+- };
+-
+- gpio-keys@0 {
+- compatible = "gpio-keys";
+-
+- key@114 {
+- interrupt-parent = <&gpj1>;
+- interrupts = <2 0>;
+- gpios = <&gpj1 2 1>;
+- linux,code = <114>;
+- label = "volume down";
+- debounce-interval = <10>;
+- };
+-
+- key@115 {
+- interrupt-parent = <&gpj1>;
+- interrupts = <1 0>;
+- gpios = <&gpj1 1 1>;
+- linux,code = <115>;
+- label = "volume up";
+- debounce-interval = <10>;
+- };
+-
+- key@116 {
+- interrupt-parent = <&gpx2>;
+- interrupts = <7 0>;
+- gpios = <&gpx2 7 1>;
+- linux,code = <116>;
+- label = "power";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+-
+- key@139 {
+- interrupt-parent = <&gpx0>;
+- interrupts = <1 0>;
+- gpios = <&gpx0 1 1>;
+- linux,code = <139>;
+- label = "menu";
+- debounce-interval = <10>;
+- gpio-key,wakeup;
+- };
+- };
+-
+- i2c_0: i2c@13860000 {
+- samsung,i2c-sda-delay = <100>;
+- samsung,i2c-slave-addr = <0x10>;
+- samsung,i2c-max-bus-freq = <400000>;
+- pinctrl-0 = <&i2c0_bus>;
+- pinctrl-names = "default";
+- status = "okay";
+-
+- s5c73m3@3c {
+- compatible = "samsung,s5c73m3";
+- reg = <0x3c>;
+- standby-gpios = <&gpm0 1 1>; /* ISP_STANDBY */
+- xshutdown-gpios = <&gpf1 3 1>; /* ISP_RESET */
+- vdd-int-supply = <&buck9_reg>;
+- vddio-cis-supply = <&ldo9_reg>;
+- vdda-supply = <&ldo17_reg>;
+- vddio-host-supply = <&ldo18_reg>;
+- vdd-af-supply = <&cam_af_reg>;
+- vdd-reg-supply = <&cam_io_reg>;
+- clock-frequency = <24000000>;
+- clocks = <&camera 0>; /* CAM_A_CLKOUT */
+- clock-names = "cis_extclk";
+- port {
+- s5c73m3_ep: endpoint {
+- remote-endpoint = <&csis0_ep>;
+- data-lanes = <1 2 3 4>;
+- };
+- };
+- };
+- };
+-
+- i2c@13870000 {
+- samsung,i2c-sda-delay = <100>;
+- samsung,i2c-slave-addr = <0x10>;
+- samsung,i2c-max-bus-freq = <400000>;
+- pinctrl-0 = <&i2c1_bus>;
+- pinctrl-names = "default";
+- status = "okay";
+-
+- lsm330dlc_gyro@6b {
+- compatible = "st,lsm330dlc-gyro";
+- reg = <0x6b>;
+- irq-map-policy = <1>;
+- interrupt-controller;
+- #interrups-cells = <2>;
+- interrupt-parent = <&lsm330dlc_gyro_map>;
+- interrupts= <1 0>;
+-
+- lsm330dlc_gyro_map: lsm330dlc-gyro-map {
+- compatible = "samsung,lsm330dlc-gyro-map";
+- #interrupt-cells = <2>;
+- #address-cells = <0>;
+- #size-cells = <0>;
+- interrupt-map = <0x1 0 &gpf0 3 0>;
+- };
+- };
+-
+- lsm330dlc_accel@19 {
+- compatible = "st,lsm330dlc-accel";
+- reg = <0x19>;
+- irq-map-policy = <2>;
+- interrupt-controller;
+- #interrups-cells = <2>;
+- interrupt-parent = <&lsm330dlc_accel_map>;
+- interrupts= <1 0>;
+-
+- lsm330dlc_accel_map: lsm330dlc-accel-map {
+- compatible = "samsung,lsm330dlc-accel-map";
+- #interrupt-cells = <2>;
+- #address-cells = <0>;
+- #size-cells = <0>;
+- interrupt-map = <0x1 0 &gpx0 0 0>;
+- };
+- };
+- };
+-
+- i2c@13890000 {
+- samsung,i2c-sda-delay = <100>;
+- samsung,i2c-slave-addr = <0x10>;
+- samsung,i2c-max-bus-freq = <400000>;
+- pinctrl-0 = <&i2c3_bus>;
+- pinctrl-names = "default";
+- status = "okay";
+-
+- mms114-touchscreen@48 {
+- compatible = "melfas,mms114";
+- reg = <0x48>;
+- interrupt-parent = <&gpm2>;
+- interrupts = <3 2>;
+- x-size = <720>;
+- y-size = <1280>;
+- avdd-supply = <&ldo23_reg>;
+- vdd-supply = <&ldo24_reg>;
+- };
+- };
+-
+- i2c@138D0000 {
+- samsung,i2c-sda-delay = <100>;
+- samsung,i2c-slave-addr = <0x10>;
+- samsung,i2c-max-bus-freq = <100000>;
+- pinctrl-0 = <&i2c7_bus>;
+- pinctrl-names = "default";
+- status = "okay";
+-
+- max77686_pmic@09 {
+- compatible = "maxim,max77686";
+- interrupt-parent = <&gpx0>;
+- interrupts = <7 0>;
+- reg = <0x09>;
+-
+- voltage-regulators {
+- ldo1_reg: ldo@1 {
+- regulator-compatible = "LDO1";
+- regulator-name = "VALIVE_1.0V_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo2_reg: ldo@2 {
+- regulator-compatible = "LDO2";
+- regulator-name = "VM1M2_1.2V_AP";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- regulator-always-on;
+- };
+-
+- ldo3_reg: ldo@3 {
+- regulator-compatible = "LDO3";
+- regulator-name = "VCC_1.8V_AP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo4_reg: ldo@4 {
+- regulator-compatible = "LDO4";
+- regulator-name = "VCC_2.8V_AP";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- regulator-always-on;
+- };
+-
+- ldo5_reg: ldo@5 {
+- regulator-compatible = "LDO5";
+- regulator-name = "VCC_1.8V_IO";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo6_reg: ldo@6 {
+- regulator-compatible = "LDO6";
+- regulator-name = "VMPLL_1.0V_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo7_reg: ldo@7 {
+- regulator-compatible = "LDO7";
+- regulator-name = "VPLL_1.0V_AP";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo8_reg: ldo@8 {
+- regulator-compatible = "LDO8";
+- regulator-name = "VMIPI_1.0V";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- };
+-
+- ldo9_reg: ldo@9 {
+- regulator-compatible = "LDO9";
+- regulator-name = "CAM_ISP_MIPI_1.2V";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- };
+-
+- ldo10_reg: ldo@10 {
+- regulator-compatible = "LDO10";
+- regulator-name = "VMIPI_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo11_reg: ldo@11 {
+- regulator-compatible = "LDO11";
+- regulator-name = "VABB1_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo12_reg: ldo@12 {
+- regulator-compatible = "LDO12";
+- regulator-name = "VUOTG_3.0V";
+- regulator-min-microvolt = <3000000>;
+- regulator-max-microvolt = <3000000>;
+- };
+-
+- ldo13_reg: ldo@13 {
+- regulator-compatible = "LDO13";
+- regulator-name = "NFC_AVDD_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo14_reg: ldo@14 {
+- regulator-compatible = "LDO14";
+- regulator-name = "VABB2_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo15_reg: ldo@15 {
+- regulator-compatible = "LDO15";
+- regulator-name = "VHSIC_1.0V";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1000000>;
+- regulator-always-on;
+- };
+-
+- ldo16_reg: ldo@16 {
+- regulator-compatible = "LDO16";
+- regulator-name = "VHSIC_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- regulator-always-on;
+- };
+-
+- ldo17_reg: ldo@17 {
+- regulator-compatible = "LDO17";
+- regulator-name = "CAM_SENSOR_CORE_1.2V";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- };
+-
+- ldo18_reg: ldo@18 {
+- regulator-compatible = "LDO18";
+- regulator-name = "CAM_ISP_SENSOR_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo19_reg: ldo@19 {
+- regulator-compatible = "LDO19";
+- regulator-name = "VT_CAM_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo20_reg: ldo@20 {
+- regulator-compatible = "LDO20";
+- regulator-name = "VDDQ_PRE_1.8V";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo21_reg: ldo@21 {
+- regulator-compatible = "LDO21";
+- regulator-name = "VTF_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- };
+-
+- ldo22_reg: ldo@22 {
+- regulator-compatible = "LDO22";
+- regulator-name = "VMEM_VDD_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- regulator-always-on;
+- };
+-
+- ldo23_reg: ldo@23 {
+- regulator-compatible = "LDO23";
+- regulator-name = "TSP_AVDD_3.3V";
+- regulator-min-microvolt = <3300000>;
+- regulator-max-microvolt = <3300000>;
+- };
+-
+- ldo24_reg: ldo@24 {
+- regulator-compatible = "LDO24";
+- regulator-name = "VDD_1.8V_TSP";
+- regulator-min-microvolt = <1800000>;
+- regulator-max-microvolt = <1800000>;
+- };
+-
+- ldo25_reg: ldo@25 {
+- regulator-compatible = "LDO25";
+- regulator-name = "LED_A_2.8V";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- };
+-
+- ldo26_reg: ldo@26 {
+- regulator-compatible = "LDO26";
+- regulator-name = "MOTOR_VCC_3.0V";
+- regulator-min-microvolt = <3000000>;
+- regulator-max-microvolt = <3000000>;
+- };
+-
+- buck1_reg: buck@1 {
+- regulator-compatible = "BUCK1";
+- regulator-name = "vdd_mif";
+- regulator-min-microvolt = <850000>;
+- regulator-max-microvolt = <1100000>;
+- regulator-always-on;
+- regulator-boot-on;
+- };
+-
+- buck2_reg: buck@2 {
+- regulator-compatible = "BUCK2";
+- regulator-name = "vdd_arm";
+- regulator-min-microvolt = <850000>;
+- regulator-max-microvolt = <1500000>;
+- regulator-always-on;
+- regulator-boot-on;
+- };
+-
+- buck3_reg: buck@3 {
+- regulator-compatible = "BUCK3";
+- regulator-name = "vdd_int";
+- regulator-min-microvolt = <850000>;
+- regulator-max-microvolt = <1150000>;
+- regulator-always-on;
+- regulator-boot-on;
+- };
+-
+- buck4_reg: buck@4 {
+- regulator-compatible = "BUCK4";
+- regulator-name = "vdd_g3d";
+- regulator-min-microvolt = <850000>;
+- regulator-max-microvolt = <1150000>;
+- regulator-boot-on;
+- };
+-
+- buck5_reg: buck@5 {
+- regulator-compatible = "BUCK5";
+- regulator-name = "VMEM_1.2V_AP";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- regulator-always-on;
+- };
+-
+- buck6_reg: buck@6 {
+- regulator-compatible = "BUCK6";
+- regulator-name = "VCC_SUB_1.35V";
+- regulator-min-microvolt = <1350000>;
+- regulator-max-microvolt = <1350000>;
+- regulator-always-on;
+- };
+- buck7_reg: buck@7 {
+- regulator-compatible = "BUCK7";
+- regulator-name = "VCC_SUB_2.0V";
+- regulator-min-microvolt = <2000000>;
+- regulator-max-microvolt = <2000000>;
+- regulator-always-on;
+- };
+-
+- buck8_reg: buck@8 {
+- regulator-compatible = "BUCK8";
+- regulator-name = "VMEM_VDDF_3.0V";
+- regulator-min-microvolt = <2850000>;
+- regulator-max-microvolt = <2850000>;
+- regulator-always-on;
+- };
+-
+- buck9_reg: buck@9 {
+- regulator-compatible = "BUCK9";
+- regulator-name = "CAM_ISP_CORE_1.2V";
+- regulator-min-microvolt = <1000000>;
+- regulator-max-microvolt = <1200000>;
+- };
+- };
+- };
+- };
+-
+- i2c_if_pmic: i2c@0 {
+- compatible = "i2c-gpio";
+- gpios = <&gpm2 0 0
+- &gpm2 1 0
+- >;
+- #address-cells = <1>;
+- #size-cells = <0>;
+- };
+-
+- lcd_vdd_reg: voltage-regulator@1 {
+- compatible = "regulator-fixed";
+- regulator-name = "LCD_VDD_5.0V";
+- regulator-min-microvolt = <5000000>;
+- regulator-max-microvolt = <5000000>;
+- gpio = <&gpm0 0 0>;
+- enable-active-high;
+- };
+-
+- cam_af_reg: voltage-regulator@2 {
+- compatible = "regulator-fixed";
+- regulator-name = "CAM_AF";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- gpio = <&gpm0 4 0>;
+- enable-active-high;
+- };
+-
+- cam_io_reg: voltage-regulator@3 {
+- compatible = "regulator-fixed";
+- regulator-name = "CAM_SENSOR_A";
+- regulator-min-microvolt = <2800000>;
+- regulator-max-microvolt = <2800000>;
+- gpio = <&gpm0 2 0>;
+- enable-active-high;
+- };
+-
+- cam_isp_core_reg: voltage-regulator@4 {
+- compatible = "regulator-fixed";
+- regulator-name = "CAM_ISP_CORE_1.2V_EN";
+- regulator-min-microvolt = <1200000>;
+- regulator-max-microvolt = <1200000>;
+- gpio = <&gpm0 3 0>;
+- enable-active-high;
+- regulator-always-on;
+- };
+-
+- fimd0_lcd: panel {
+- compatible = "samsung,l5f31188";
+- width = <720>;
+- height = <1280>;
+- reset-gpio = <&gpf2 1 0>;
+- reset-delay1 = <15>;
+- reset-delay2 = <180>;
+- power-on-delay = <120>;
+- power-off-delay1 = <100>;
+- power-off-delay2 = <200>;
+- vdd-supply = <&ldo25_reg>;
+- vddi-supply = <&ldo5_reg>;
+- video-source = <&dsi_0>;
+- samsung,panel-width-mm = <59>; /* FIXME */
+- samsung,panel-height-mm = <105>; /* FIXME */
+-
+- display-timings {
+- native-mode = <&timing0>;
+-
+- timing0: timing-0 {
+- clock-frequency = <0>;
+- hactive = <720>;
+- vactive = <1280>;
+- hfront-porch = <81>;
+- hback-porch = <81>;
+- hsync-len = <27>;
+- vfront-porch = <11>;
+- vback-porch = <4>;
+- vsync-len = <2>;
+- };
+- };
+- };
+-
+- dsi_0: dsi@11C80000 {
+- samsung,pll-stable-time = <500>;
+- samsung,stop-holding-count = <0x7ff>;
+- samsung,bta-timeout = <0xff>;
+- samsung,rx-timeout = <0xffff>;
+- samsung,pll-clk-freq = <24000000>;
+- samsung,cmd-allow = <0xf>;
+- vdd11-supply = <&ldo8_reg>;
+- vdd18-supply = <&ldo10_reg>;
+- status = "okay";
+- };
+-
+- fimd@11c00000 {
+- samsung,fimd-display = <&fimd0_lcd>;
+- samsung,fimd-vidout-rgb;
+- samsung,fimd-inv-vclk;
+- samsung,fimd-frame-rate = <60>;
+- samsung,default-window = <3>;
+- samsung,fimd-win-bpp = <32>;
+- status = "okay";
+- };
+-
+- vidi {
+- compatible = "samsung,exynos-drm-vidi";
+- };
+-
+- sysmmu-fimd0 {
+- clock-names = "sysmmu";
+- clocks = <&clock 287>;
+- mmu-master = <&fimd>;
+- };
+-
+- sysmmu-g2d {
+- clock-names = "sysmmu";
+- clocks = <&clock 280>;
+- mmu-master = <&g2d>;
+- };
+-
+- exynos-usbphy@125B0000 {
+- status = "okay";
+- };
+-
+- hsotg@12480000 {
+- status = "okay";
+- vusb_d-supply = <&ldo15_reg>;
+- vusb_a-supply = <&ldo12_reg>;
+- };
+-
+- spi_1: spi@13930000 {
+- pinctrl-names = "default";
+- pinctrl-0 = <&spi1_bus>;
+- status = "okay";
+-
+- s5c73m3_spi: s5c73m3 {
+- compatible = "samsung,s5c73m3";
+- spi-max-frequency = <50000000>;
+- reg = <0>;
+- controller-data {
+- cs-gpio = <&gpb 5 0>;
+- samsung,spi-feedback-delay = <2>;
+- };
+- };
+- };
+-
+- g2d@10800000 {
+- status = "okay";
+- };
+-
+- rotator: rotator@12810000 {
+- status = "okay";
+- };
+-
+- camera {
+- status = "okay";
+-
+- pinctrl-names = "default";
+- pinctrl-0 = <&cam_port_a_clk_active>;
+-
+- fimc_0: fimc@11800000 {
+- clock-frequency = <176000000>;
+- status = "okay";
+- };
+-
+- fimc_1: fimc@11810000 {
+- clock-frequency = <176000000>;
+- status = "okay";
+- };
+-
+- fimc_2: fimc@11820000 {
+- clock-frequency = <176000000>;
+- status = "okay";
+- };
+-
+- fimc_3: fimc@11830000 {
+- clock-frequency = <176000000>;
+- status = "okay";
+- };
+-
+- csis_0: csis@11880000 {
+- status = "okay";
+- vddcore-supply = <&ldo8_reg>;
+- vddio-supply = <&ldo10_reg>;
+- clock-frequency = <160000000>;
+- #address-cells = <1>;
+- #size-cells = <0>;
+-
+- /* Camera C (3) MIPI CSI-2 (CSIS0) */
+- port@3 {
+- reg = <3>;
+- csis0_ep: endpoint {
+- remote-endpoint = <&s5c73m3_ep>;
+- data-lanes = <1 2 3 4>;
+- samsung,csis-hs-settle = <12>;
+- };
+- };
+- };
+- };
+-
+- mfc: codec@13400000 {
+- status = "okay";
+-
+- memport@0 {
+- memory-region = <&mfc_l_mem>;
+- };
+-
+- memport@1 {
+- memory-region = <&mfc_r_mem>;
+- };
+- };
+-
+- gpu@13000000 {
+- status = "okay";
+- vdd_g3d-supply = <&buck4_reg>;
+- };
+-
+- cpufreq {
+- status = "okay";
+- overclocking = "okay";
+- max_overclocking_freq = <1500000>;
+- };
+-
+- ehci@12580000 {
+- status = "okay";
+- };
+-};
+diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts
+new file mode 100644
+index 0000000..208e15f
+--- /dev/null
++++ b/arch/arm/boot/dts/exynos4412-trats2.dts
+@@ -0,0 +1,1601 @@
++/*
++ * Samsung's Exynos4412 based Trats2 board device tree source
++ *
++ * Copyright (c) 2012 Samsung Electronics Co., Ltd.
++ * http://www.samsung.com
++ *
++ * Device tree source file for Samsung's Trats2 board which is based on
++ * Samsung's Exynos4412 SoC.
++ *
++ * 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/ "exynos4412.dtsi"
++
++&pinctrl_0 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pdn_group_low_0>,
++ <&pdn_group_high_0>,
++ <&pdn_group_in_nopull_0>,
++ <&pdn_group_in_down_0>,
++ <&pdn_group_in_up_0>,
++ <&pdn_group_prev_0>;
++
++ pdn_group_low_0: pdn-group-low {
++ samsung,pins = "gpa0-1";
++ samsung,pin-con-pdn = <0>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_high_0: pdn-group-high {
++ samsung,pins = "gpf3-4";
++ samsung,pin-con-pdn = <1>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_in_nopull_0: pdn-group-in-nopull {
++ samsung,pins = "gpa0-0", "gpa0-2", "gpa0-4", "gpb-0",
++ "gpb-1", "gpb-2", "gpb-3", "gpc1-0",
++ "gpc1-2", "gpc1-3", "gpc1-4", "gpd0-2",
++ "gpd0-3", "gpd1-2", "gpd1-3", "gpf0-0",
++ "gpf0-1", "gpf0-4", "gpf0-6", "gpf1-4",
++ "gpf1-5", "gpf2-6", "gpf2-7", "gpf3-0";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_in_down_0: pdn-group-in-down {
++ samsung,pins = "gpa0-5", "gpa0-6", "gpa1-0", "gpa1-1",
++ "gpa1-2", "gpa1-3", "gpa1-4", "gpa1-5",
++ "gpb-4", "gpb-6", "gpb-7", "gpc0-0",
++ "gpc0-1", "gpc0-2", "gpc0-3", "gpc0-4",
++ "gpd0-0", "gpd0-1", "gpd1-0", "gpd1-1",
++ "gpf0-2", "gpf0-3", "gpf0-5", "gpf0-7",
++ "gpf1-0", "gpf1-1", "gpf1-2", "gpf1-3",
++ "gpf1-6", "gpf2-1", "gpf2-2", "gpf2-3",
++ "gpf2-4", "gpf2-5", "gpf3-5", "gpj0-3",
++ "gpj0-6", "gpj0-7", "gpj1-0", "gpj1-3",
++ "gpj1-4";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <1>;
++ };
++
++ pdn_group_in_up_0: pdn-group-in-up {
++ samsung,pins = "gpa0-3", "gpa0-7", "gpb-5";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <2>;
++ };
++
++ pdn_group_prev_0: pdn-group-prev {
++ samsung,pins = "gpc1-1", "gpf1-7", "gpf2-0", "gpf3-1",
++ "gpf3-2", "gpf3-3", "gpj0-0", "gpj0-1",
++ "gpj0-2", "gpj0-4", "gpj0-5", "gpj1-1",
++ "gpj1-2";
++ samsung,pin-con-pdn = <3>;
++ samsung,pin-pud-pdn = <0>;
++ };
++};
++
++&pinctrl_1 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pdn_group_low_1>,
++ <&pdn_group_high_1>,
++ <&pdn_group_in_nopull_1>,
++ <&pdn_group_in_down_1>,
++ <&pdn_group_prev_1>;
++
++ pdn_group_low_1: pdn-group-low {
++ samsung,pins = "gpk3-0", "gpk0-2";
++ samsung,pin-con-pdn = <0>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_high_1: pdn-group-high {
++ samsung,pins = "gpm3-3";
++ samsung,pin-con-pdn = <1>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_in_nopull_1: pdn-group-in-nopull {
++ samsung,pins = "gpk3-1", "gpk3-3", "gpk3-4", "gpk3-5",
++ "gpk3-6", "gpy2-2", "gpy2-3", "gpy2-4",
++ "gpy2-5", "gpm1-2", "gpm1-3", "gpm1-4",
++ "gpm1-5", "gpm2-0", "gpm2-1";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <0>;
++ };
++
++ pdn_group_in_down_1: pdn-group-in-down {
++ samsung,pins = "gpk1-0", "gpk1-1", "gpk1-2", "gpk2-0",
++ "gpk2-1", "gpk2-2", "gpk2-3", "gpk2-4",
++ "gpk2-5", "gpk2-6", "gpk3-2", "gpl0-0",
++ "gpl0-1", "gpl0-2", "gpl0-3", "gpl1-0",
++ "gpl1-1", "gpl2-0", "gpl2-1", "gpl2-2",
++ "gpl2-3", "gpl2-4", "gpl2-5", "gpl2-7",
++ "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3",
++ "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7",
++ "gpm1-0", "gpm1-1", "gpm1-6", "gpm2-2",
++ "gpm2-3", "gpm2-4", "gpm3-4", "gpm3-5",
++ "gpm3-6", "gpm3-7", "gpm4-0", "gpm4-1",
++ "gpm4-2", "gpm4-3", "gpm4-4", "gpm4-5",
++ "gpm4-6", "gpm4-7", "gpy0-0", "gpy0-1",
++ "gpy0-2", "gpy0-3", "gpy0-4", "gpy0-5",
++ "gpy1-0", "gpy1-1", "gpy1-2", "gpy1-3",
++ "gpy2-1", "gpy3-0", "gpy3-1", "gpy3-2",
++ "gpy3-3", "gpy3-4", "gpy3-5", "gpy3-6",
++ "gpy3-7", "gpy4-0", "gpy4-1", "gpy4-2",
++ "gpy4-3", "gpy4-4", "gpy4-5", "gpy4-6",
++ "gpy4-7", "gpy5-0", "gpy5-1", "gpy5-2",
++ "gpy5-3", "gpy5-4", "gpy5-5", "gpy5-6",
++ "gpy5-7", "gpy6-0", "gpy6-1", "gpy6-2",
++ "gpy6-3", "gpy6-4", "gpy6-5", "gpy6-6",
++ "gpy6-7";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <1>;
++ };
++
++ pdn_group_prev_1: pdn-group-prev {
++ samsung,pins = "gpk0-0", "gpk0-1", "gpk0-3", "gpk0-4",
++ "gpk0-5", "gpk0-6", "gpk1-3", "gpk1-4",
++ "gpk1-5", "gpk1-6", "gpl0-4", "gpl0-6",
++ "gpl2-6", "gpy2-0", "gpm3-0", "gpm3-1",
++ "gpm3-2";
++ samsung,pin-con-pdn = <3>;
++ samsung,pin-pud-pdn = <0>;
++ };
++};
++
++&pinctrl_2 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pdn_group_in_down_2>;
++
++ pdn_group_in_down_2: pdn-group-in-down {
++ samsung,pins = "gpz-0", "gpz-1", "gpz-2", "gpz-3",
++ "gpz-4", "gpz-5", "gpz-6";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <1>;
++ };
++};
++
++&pinctrl_3 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&pdn_group_in_down_3>;
++
++ pdn_group_in_down_3: pdn-group-in-down {
++ samsung,pins = "gpv0-0", "gpv0-1", "gpv0-2", "gpv0-3",
++ "gpv0-4", "gpv0-5", "gpv0-6", "gpv0-7",
++ "gpv1-0", "gpv1-1", "gpv1-2", "gpv1-3",
++ "gpv1-4", "gpv1-5", "gpv1-6", "gpv1-7",
++ "gpv2-0", "gpv2-1", "gpv2-2", "gpv2-3",
++ "gpv2-4", "gpv2-5", "gpv2-6", "gpv2-7",
++ "gpv3-0", "gpv3-1", "gpv3-2", "gpv3-3",
++ "gpv3-4", "gpv3-5", "gpv3-6", "gpv3-7",
++ "gpv4-0";
++ samsung,pin-con-pdn = <2>;
++ samsung,pin-pud-pdn = <1>;
++ };
++};
++
++/ {
++ model = "Samsung TRATS2 based on Exynos4412";
++ compatible = "samsung,trats2", "samsung,exynos4412";
++
++ aliases {
++ i2c8 = &i2c_ak8975;
++ i2c9 = &i2c_lps331ap;
++ i2c10 = &i2c_if_pmic;
++ i2c11 = &i2c_fuel;
++ i2c12 = &i2c_gp2ap020a00f;
++ /* 15...16 reserved for i2c0_isp, i2c1_isp */
++ i2c16 = &i2c1_isp;
++ i2c20 = &i2c_touch_key;
++ i2c21 = &i2c_cm36651;
++ };
++
++ pinctrl@11400000 {
++ vt_cam_id: vt-cam-id {
++ samsung,pins = "gpf1-2";
++ samsung,pin-function = <2>;
++ samsung,pin-pud = <1>;
++ samsung,pin-drv = <3>;
++ };
++ };
++
++ gpio-keys@0 {
++ compatible = "gpio-keys";
++
++ key@114 {
++ interrupt-parent = <&gpx3>;
++ interrupts = <3 0>;
++ gpios = <&gpx3 3 1>;
++ linux,code = <114>;
++ label = "volume down";
++ debounce-interval = <10>;
++ };
++
++ key@115 {
++ interrupt-parent = <&gpx2>;
++ interrupts = <2 0>;
++ gpios = <&gpx2 2 1>;
++ linux,code = <115>;
++ label = "volume up";
++ debounce-interval = <10>;
++ };
++
++ key@116 {
++ interrupt-parent = <&gpx2>;
++ interrupts = <7 0>;
++ gpios = <&gpx2 7 1>;
++ linux,code = <116>;
++ label = "power";
++ debounce-interval = <10>;
++ gpio-key,wakeup;
++ };
++
++ key@139 {
++ interrupt-parent = <&gpx0>;
++ interrupts = <1 0>;
++ gpios = <&gpx0 1 1>;
++ linux,code = <139>;
++ label = "ok";
++ debounce-interval = <10>;
++ gpio-key,wakeup;
++ };
++ };
++
++ i2c_touch_key: i2c-gpio-3 {
++ compatible = "i2c-gpio";
++ gpios = <&gpl0 2 0>, <&gpl0 1 0>;
++ i2c-gpio,delay-us = <2>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ touch_key@20 {
++ compatible = "mcs5080_touchkey";
++ reg = <0x20>;
++ interrupt-parent = <&gpj0>;
++ interrupts = <3 0>;
++ key_maxval = <2>;
++ linux,code = <0x0000009e /* KEY_BACK */
++ 0x000000a9>; /* KEY_MENU */
++ };
++ };
++
++ i2c_cm36651: i2c-gpio-2 {
++ compatible = "i2c-gpio";
++ gpios = <&gpf0 0 0>, <&gpf0 1 0>;
++ i2c-gpio,delay-us = <2>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ cm36651@18 {
++ compatible = "cm36651";
++ reg = <0x18>;
++ interrupt-parent = <&gpx0>;
++ interrupts = <2 0>;
++ vled-supply = <&ps_als_reg>;
++ };
++ };
++
++ cpufreq {
++ freq_table = <1400000 1300000 1200000 1100000 1000000
++ 900000 800000 700000 600000 500000 400000 300000
++ 200000>;
++ };
++
++ thermistor-ap@0 {
++ compatible = "ntc,ncp03wb473";
++ status = "ok";
++ pullup-uv = <1800000>;
++ pullup-ohm = <100000>;
++ pulldown-ohm = <100000> ;
++ io-channels = <&adc 1>;
++ };
++
++ thermistor-batt@0 {
++ compatible = "ntc,ncp03wb473";
++ status = "ok";
++ pullup-uv = <1800000>;
++ pullup-ohm = <100000>;
++ pulldown-ohm = <100000> ;
++ io-channels = <&adc 2>;
++ };
++
++ rtc@10070000 {
++ status = "okay";
++ };
++
++ memory {
++ reg = <0x40000000 0x10000000
++ 0x50000000 0x10000000
++ 0x60000000 0x10000000
++ 0x70000000 0x10000000>;
++
++ reserved-memory {
++ #address-cells = <1>;
++ #size-cells = <1>;
++
++ contig_mem: region@71000000 {
++ compatible = "linux,contiguous-memory-region";
++ reg = <0x71000000 0x0c000000>;
++ linux,default-contiguous-region;
++ };
++
++ fimc_mem: region@70000000 {
++ compatible = "linux,contiguous-memory-region", "reserved-memory-region";
++ reg = <0x70000000 0x1000000>;
++ };
++
++ mfc_l_mem: mfc_l_region@43000000 {
++ compatible = "linux,contiguous-memory-region", "reserved-memory-region";
++ reg = <0x43000000 0x1000000>;
++ status = "disabled";
++ };
++
++ mfc_r_mem: mfc_r_region@51000000 {
++ compatible = "linux,contiguous-memory-region", "reserved-memory-region";
++ reg = <0x51000000 0x1000000>;
++ status = "disabled";
++ };
++ };
++ };
++
++ chosen {
++ bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5";
++ };
++
++ firmware@0204F000 {
++ compatible = "samsung,secure-firmware";
++ reg = <0x0204F000 0x1000>;
++ };
++
++ fixed-rate-clocks {
++ xxti {
++ compatible = "samsung,clock-xxti", "fixed-clock";
++ clock-frequency = <0>;
++ };
++
++ xusbxti {
++ compatible = "samsung,clock-xusbxti", "fixed-clock";
++ clock-frequency = <24000000>;
++ };
++ };
++
++ vemmc_reg: voltage-regulator@0 {
++ compatible = "regulator-fixed";
++ regulator-name = "MASSMEMORY_EN";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ gpio = <&gpk0 2 0>;
++ enable-active-high;
++ };
++
++ mshc@12550000 {
++ num-slots = <1>;
++ supports-highspeed;
++ broken-cd;
++ non-removable;
++ fifo-depth = <0x80>;
++ desc-num = <4>;
++ card-detect-delay = <200>;
++ vmmc-supply = <&vemmc_reg>;
++ clock-frequency = <400000000>;
++ samsung,dw-mshc-ciu-div = <0>;
++ samsung,dw-mshc-sdr-timing = <2 3>;
++ samsung,dw-mshc-ddr-timing = <1 2>;
++ pinctrl-0 = <&sd4_clk &sd4_cmd &sd4_bus4 &sd4_bus8>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ slot@0 {
++ reg = <0>;
++ bus-width = <8>;
++ };
++ };
++
++ sdhci_sd: sdhci@12530000 {
++ bus-width = <4>;
++ cd-gpios = <&gpx3 4 0>;
++ cd-inverted;
++ interrupts = <0 75 0>;
++ pinctrl-0 = <&sd2_clk &sd2_cmd &sd2_bus4>;
++ pinctrl-names = "default";
++ vmmc-supply = <&ldo21_reg>;
++ status = "okay";
++ };
++
++ serial@13800000 {
++ status = "okay";
++ };
++
++ serial@13810000 {
++ status = "okay";
++ };
++
++ serial@13820000 {
++ status = "okay";
++ };
++
++ serial@13830000 {
++ status = "okay";
++ };
++
++ gpio-keys@0 {
++ compatible = "gpio-keys";
++
++ key@114 {
++ interrupt-parent = <&gpj1>;
++ interrupts = <2 0>;
++ gpios = <&gpj1 2 1>;
++ linux,code = <114>;
++ label = "volume down";
++ debounce-interval = <10>;
++ };
++
++ key@115 {
++ interrupt-parent = <&gpj1>;
++ interrupts = <1 0>;
++ gpios = <&gpj1 1 1>;
++ linux,code = <115>;
++ label = "volume up";
++ debounce-interval = <10>;
++ };
++
++ key@116 {
++ interrupt-parent = <&gpx2>;
++ interrupts = <7 0>;
++ gpios = <&gpx2 7 1>;
++ linux,code = <116>;
++ label = "power";
++ debounce-interval = <10>;
++ gpio-key,wakeup;
++ };
++ };
++
++ i2c_ak8975: i2c-gpio-0 {
++ compatible = "i2c-gpio";
++ gpios = <&gpy2 4 0>, <&gpy2 5 0>;
++ i2c-gpio,delay-us = <2>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ ak8975@0C {
++ compatible = "ak8975";
++ reg = <0x0C>;
++ gpios = <&gpj0 7 0>;
++ position = <2>;
++ };
++ };
++
++ i2c_lps331ap: i2c-gpio-1 {
++ compatible = "i2c-gpio";
++ gpios = <&gpy2 2 0>, <&gpy2 3 0>;
++ i2c-gpio,delay-us = <2>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ lps331ap@5d {
++ compatible = "lps331ap";
++ reg = <0x5d>;
++ gpios = <&gpf0 5 0>; /* Used only by legacy driver */
++ interrupt-parent = <&irq_map>;
++ interrupts = <0>, <1>;
++
++ irq_map: irq-map {
++ #interrupt-cells = <1>;
++ #address-cells = <0>;
++ #size-cells = <0>;
++ interrupt-map = <1 &gpf0 5 0>;
++ };
++ };
++ };
++
++ i2c_gp2ap020a00f: i2c-gpio-2 {
++ compatible = "i2c-gpio";
++ gpios = <&gpk1 1 0>, <&gpk2 2 0>;
++ i2c-gpio,delay-us = <2>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ gp2ap002a00f@39 {
++ compatible = "gp2ap002a00f";
++ reg = <0x39>;
++ interrupt-parent = <&gpx0>;
++ interrupts = <2 0>;
++ vled-supply = <&ps_als_reg>;
++ };
++ };
++
++ i2c_0: i2c@13860000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-slave-addr = <0x10>;
++ samsung,i2c-max-bus-freq = <400000>;
++ pinctrl-0 = <&i2c0_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ s5c73m3@3c {
++ compatible = "samsung,s5c73m3";
++ reg = <0x3c>;
++ standby-gpios = <&gpm0 1 1>; /* ISP_STANDBY */
++ xshutdown-gpios = <&gpf1 3 1>; /* ISP_RESET */
++ vdd-int-supply = <&buck9_reg>;
++ vddio-cis-supply = <&ldo9_reg>;
++ vdda-supply = <&ldo17_reg>;
++ vddio-host-supply = <&ldo18_reg>;
++ vdd-af-supply = <&cam_af_reg>;
++ vdd-reg-supply = <&cam_io_reg>;
++ clocks = <&camera 0>; /* CAM_A_CLKOUT */
++ clock-names = "cis_extclk";
++ clock-frequency = <24000000>;
++ port {
++ s5c73m3_ep: endpoint {
++ remote-endpoint = <&csis0_ep>;
++ data-lanes = <1 2 3 4>;
++ };
++ };
++ };
++ };
++
++ i2c@13870000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-slave-addr = <0x10>;
++ samsung,i2c-max-bus-freq = <400000>;
++ pinctrl-0 = <&i2c1_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ lsm330dlc_gyro@6b {
++ compatible = "st,lsm330dlc-gyro";
++ reg = <0x6b>;
++ irq-map-policy = <1>;
++ interrupt-controller;
++ #interrups-cells = <2>;
++ interrupt-parent = <&lsm330dlc_gyro_map>;
++ interrupts= <1 0>;
++
++ lsm330dlc_gyro_map: lsm330dlc-gyro-map {
++ compatible = "samsung,lsm330dlc-gyro-map";
++ #interrupt-cells = <2>;
++ #address-cells = <0>;
++ #size-cells = <0>;
++ interrupt-map = <0x1 0 &gpf0 3 0>;
++ };
++ };
++
++ lsm330dlc_accel@19 {
++ compatible = "st,lsm330dlc-accel";
++ reg = <0x19>;
++ irq-map-policy = <2>;
++ interrupt-controller;
++ #interrups-cells = <2>;
++ interrupt-parent = <&lsm330dlc_accel_map>;
++ interrupts= <1 0>;
++
++ lsm330dlc_accel_map: lsm330dlc-accel-map {
++ compatible = "samsung,lsm330dlc-accel-map";
++ #interrupt-cells = <2>;
++ #address-cells = <0>;
++ #size-cells = <0>;
++ interrupt-map = <0x1 0 &gpx0 0 0>;
++ };
++ };
++ };
++
++ i2c@13890000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-slave-addr = <0x10>;
++ samsung,i2c-max-bus-freq = <400000>;
++ pinctrl-0 = <&i2c3_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ mms114-touchscreen@48 {
++ compatible = "melfas,mms114";
++ reg = <0x48>;
++ interrupt-parent = <&gpm2>;
++ interrupts = <3 2>;
++ x-size = <720>;
++ y-size = <1280>;
++ avdd-supply = <&ldo23_reg>;
++ vdd-supply = <&ldo24_reg>;
++ };
++ };
++
++ i2c@138A0000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-max-bus-freq = <100000>;
++ pinctrl-0 = <&i2c4_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ wm1811: wm1811@1a {
++ compatible = "wlf,wm1811";
++ reg = <0x1a>;
++ interrupt-parent = <&gpx3>;
++ interrupts = <6 4>;
++
++ wlf,gpio-cfg = <0x3 0x0 0x0 0x0 0x0 0x0
++ 0x0 0x8000 0x0 0x0 0x0>;
++ wlf,micbias-cfg = <0x2f 0x2b>;
++
++ wlf,lineout2-feedback;
++ wlf,lineout1-se;
++ wlf,lineout2-se;
++
++ AVDD2-supply = <&vbatt_reg>;
++ DBVDD1-supply = <&ldo3_reg>;
++ DBVDD2-supply = <&vbatt_reg>;
++ DBVDD3-supply = <&vbatt_reg>;
++ CPVDD-supply = <&vbatt_reg>;
++ SPKVDD1-supply = <&vbatt_reg>;
++ SPKVDD2-supply = <&vbatt_reg>;
++
++ wlf,ldo1ena = <&gpj0 4 0>;
++ };
++ };
++
++ i2c@138B0000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-slave-addr = <0x10>;
++ samsung,i2c-max-bus-freq = <100000>;
++ pinctrl-0 = <&i2c5_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ pn544@2b {
++ compatible = "nxp,pn544-hci-i2c";
++ reg = <0x2b>;
++ interrupt-parent = <&gpx1>;
++ interrupts = <7 1>;
++ gpios = <&gpl2 6 0>, /* GPIO_ENABLE */
++ <&gpl2 7 0>; /* GPIO_FW_RESET */
++ };
++ };
++
++ i2c@138D0000 {
++ samsung,i2c-sda-delay = <100>;
++ samsung,i2c-slave-addr = <0x10>;
++ samsung,i2c-max-bus-freq = <100000>;
++ pinctrl-0 = <&i2c7_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ max77686: max77686_pmic@09 {
++ compatible = "maxim,max77686";
++ interrupt-parent = <&gpx0>;
++ interrupts = <7 0>;
++ reg = <0x09>;
++ #clock-cells = <1>;
++
++ max77686,selb_gpios = <&gpf3 1 0>,
++ <&gpf3 2 0>,
++ <&gpf3 3 0>;
++
++ max77686,dvs_gpios = <&gpm3 0 0>,
++ <&gpm3 1 0>,
++ <&gpm3 2 0>;
++
++ max77686,default_dvs_idx = <1>;
++
++ voltage-regulators {
++ ldo1_reg: ldo@1 {
++ 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: ldo@2 {
++ 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: ldo@3 {
++ 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: ldo@4 {
++ 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: ldo@5 {
++ 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: ldo@6 {
++ 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: ldo@7 {
++ 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: ldo@8 {
++ regulator-compatible = "LDO8";
++ regulator-name = "VMIPI_1.0V";
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1000000>;
++ regulator-mem-off;
++ };
++
++ ldo9_reg: ldo@9 {
++ regulator-compatible = "LDO9";
++ regulator-name = "CAM_ISP_MIPI_1.2V";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-mem-idle;
++ };
++
++ ldo10_reg: ldo@10 {
++ regulator-compatible = "LDO10";
++ regulator-name = "VMIPI_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-off;
++ };
++
++ ldo11_reg: ldo@11 {
++ regulator-compatible = "LDO11";
++ regulator-name = "VABB1_1.95V";
++ regulator-min-microvolt = <1950000>;
++ regulator-max-microvolt = <1950000>;
++ regulator-always-on;
++ regulator-mem-off;
++ };
++
++ ldo12_reg: ldo@12 {
++ regulator-compatible = "LDO12";
++ regulator-name = "VUOTG_3.0V";
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-mem-off;
++ };
++
++ ldo13_reg: ldo@13 {
++ regulator-compatible = "LDO13";
++ regulator-name = "NFC_AVDD_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-idle;
++ };
++
++ ldo14_reg: ldo@14 {
++ regulator-compatible = "LDO14";
++ regulator-name = "VABB2_1.95V";
++ regulator-min-microvolt = <1950000>;
++ regulator-max-microvolt = <1950000>;
++ regulator-always-on;
++ regulator-mem-off;
++ };
++
++ ldo15_reg: ldo@15 {
++ regulator-compatible = "LDO15";
++ regulator-name = "VHSIC_1.0V";
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1000000>;
++ regulator-mem-off;
++ };
++
++ ldo16_reg: ldo@16 {
++ regulator-compatible = "LDO16";
++ regulator-name = "VHSIC_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-always-on;
++ regulator-mem-off;
++ };
++
++ ldo17_reg: ldo@17 {
++ regulator-compatible = "LDO17";
++ regulator-name = "CAM_SENSOR_CORE_1.2V";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-mem-idle;
++ };
++
++ ldo18_reg: ldo@18 {
++ regulator-compatible = "LDO18";
++ regulator-name = "CAM_ISP_SEN_IO_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-idle;
++ };
++
++ ldo19_reg: ldo@19 {
++ regulator-compatible = "LDO19";
++ regulator-name = "VT_CAM_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-idle;
++ };
++
++ ldo20_reg: ldo@20 {
++ regulator-compatible = "LDO20";
++ regulator-name = "VDDQ_PRE_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-idle;
++ };
++
++ ldo21_reg: ldo@21 {
++ regulator-compatible = "LDO21";
++ regulator-name = "VTF_2.8V";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ regulator-mem-idle;
++ };
++
++ ldo22_reg: ldo@22 {
++ 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: ldo@23 {
++ regulator-compatible = "LDO23";
++ regulator-name = "TSP_AVDD_3.3V";
++ regulator-min-microvolt = <3300000>;
++ regulator-max-microvolt = <3300000>;
++ regulator-mem-idle;
++ };
++
++ ldo24_reg: ldo@24 {
++ regulator-compatible = "LDO24";
++ regulator-name = "TSP_VDD_1.8V";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ regulator-mem-idle;
++ };
++
++ ldo25_reg: ldo@25 {
++ regulator-compatible = "LDO25";
++ regulator-name = "LCD_VCC_3.3V";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ regulator-mem-idle;
++ };
++
++ ldo26_reg: ldo@26 {
++ regulator-compatible = "LDO26";
++ regulator-name = "MOTOR_VCC_3.0V";
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ regulator-mem-idle;
++ };
++
++ buck1_reg: buck@1 {
++ 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: buck@2 {
++ 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: buck@3 {
++ 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: buck@4 {
++ regulator-compatible = "BUCK4";
++ regulator-name = "vdd_g3d";
++ regulator-min-microvolt = <850000>;
++ regulator-max-microvolt = <1150000>;
++ regulator-boot-on;
++ regulator-mem-off;
++ };
++
++ buck5_reg: buck@5 {
++ regulator-compatible = "BUCK5";
++ regulator-name = "VMEM_1.2V_AP";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-always-on;
++ };
++
++ buck6_reg: buck@6 {
++ regulator-compatible = "BUCK6";
++ regulator-name = "VCC_SUB_1.35V";
++ regulator-min-microvolt = <1350000>;
++ regulator-max-microvolt = <1350000>;
++ regulator-always-on;
++ };
++
++ buck7_reg: buck@7 {
++ regulator-compatible = "BUCK7";
++ regulator-name = "VCC_SUB_2.0V";
++ regulator-min-microvolt = <2000000>;
++ regulator-max-microvolt = <2000000>;
++ regulator-always-on;
++ };
++
++ buck8_reg: buck@8 {
++ 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: buck@9 {
++ regulator-compatible = "BUCK9";
++ regulator-name = "CAM_ISP_CORE_1.2V";
++ regulator-min-microvolt = <1000000>;
++ regulator-max-microvolt = <1200000>;
++ regulator-mem-off;
++ };
++ };
++ };
++ };
++
++ i2c_if_pmic: i2c@0 {
++ compatible = "i2c-gpio";
++ gpios = <&gpm2 0 0
++ &gpm2 1 0
++ >;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ max77693@66 {
++ compatible = "maxim,max77693";
++ interrupt-parent = <&gpx1>;
++ interrupts = <5 2>;
++ wakeup = <1>;
++ reg = <0x66>;
++
++ regulators {
++ esafeout1_reg: esafeout@1 {
++ regulator-compatible = "ESAFEOUT1";
++ regulator-name = "ESAFEOUT1";
++ regulator-always-on;
++ regulator-boot-on;
++ };
++ esafeout2_reg: esafeout@2 {
++ regulator-compatible = "ESAFEOUT2";
++ regulator-name = "ESAFEOUT2";
++ };
++ charger_reg: charger@0 {
++ regulator-compatible = "CHARGER";
++ regulator-name = "CHARGER";
++ regulator-min-microamp = <60000>;
++ regulator-max-microamp = <2580000>;
++ regulator-boot-on;
++ };
++ };
++
++ max_muic: max77693-muic {
++ compatible = "maxim,max77693-muic";
++ intmask@1 {
++ addr = <0x7>;
++ data = <0x9>;
++ };
++ intmask@2 {
++ addr = <0x8>;
++ data = <0x1>;
++ };
++
++ };
++ };
++ };
++
++ i2c_fuel: i2c@1 {
++ compatible = "i2c-gpio";
++ gpios = <&gpf1 5 0
++ &gpf1 4 0
++ >;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ max17047@36 {
++ compatible = "maxim,max17047";
++ interrupt-parent = <&gpx2>;
++ interrupts = <3 2>;
++ reg = <0x36>;
++ };
++ };
++
++ lcd_vdd3_reg: voltage-regulator@1 {
++ compatible = "regulator-fixed";
++ regulator-name = "LCD_VDD_2.2V";
++ regulator-min-microvolt = <2200000>;
++ regulator-max-microvolt = <2200000>;
++ gpio = <&gpc0 1 0>;
++ enable-active-high;
++ };
++
++ cam_af_reg: voltage-regulator@2 {
++ compatible = "regulator-fixed";
++ regulator-name = "CAM_AF";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ gpio = <&gpm0 4 0>;
++ enable-active-high;
++ };
++
++ cam_io_reg: voltage-regulator@3 {
++ compatible = "regulator-fixed";
++ regulator-name = "CAM_SENSOR_A";
++ regulator-min-microvolt = <2800000>;
++ regulator-max-microvolt = <2800000>;
++ gpio = <&gpm0 2 0>;
++ enable-active-high;
++ };
++
++ cam_isp_core_reg: voltage-regulator@4 {
++ compatible = "regulator-fixed";
++ regulator-name = "CAM_ISP_CORE_1.2V_EN";
++ regulator-min-microvolt = <1200000>;
++ regulator-max-microvolt = <1200000>;
++ gpio = <&gpm0 3 0>;
++ enable-active-high;
++ regulator-always-on;
++ };
++
++ vbatt_reg: voltage-regulator@5 {
++ compatible = "regulator-fixed";
++ regulator-name = "VBATT";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ gpio = <>;
++ regulator-always-on;
++ };
++
++ ps_als_reg: voltage-regulator@6 {
++ compatible = "regulator-fixed";
++ regulator-name = "LED_A_3.0V";
++ regulator-min-microvolt = <3000000>;
++ regulator-max-microvolt = <3000000>;
++ gpio = <&gpj0 5 0>;
++ enable-active-high;
++ };
++
++ fimd0_lcd: panel {
++ compatible = "samsung,s6e8aa0";
++ reset-gpio = <&gpy4 5 0>;
++ power-on-delay= <50>;
++ reset-delay = <100>;
++ init-delay = <100>;
++ vdd3-supply = <&lcd_vdd3_reg>;
++ vci-supply = <&ldo25_reg>;
++ video-source = <&dsi_0>;
++ samsung,panel-width-mm = <58>; /* FIXME */
++ samsung,panel-height-mm = <103>; /* FIXME */
++
++ display-timings {
++ native-mode = <&timing0>;
++
++ timing0: timing-0 {
++ clock-frequency = <0>;
++ hactive = <720>;
++ vactive = <1280>;
++ hfront-porch = <5>;
++ hback-porch = <5>;
++ hsync-len = <5>;
++ vfront-porch = <13>;
++ vback-porch = <1>;
++ vsync-len = <2>;
++ };
++ };
++ };
++
++ dsi_0: dsi@11C80000 {
++ samsung,pll-stable-time = <500>;
++ samsung,stop-holding-count = <0x7ff>;
++ samsung,bta-timeout = <0xff>;
++ samsung,rx-timeout = <0xffff>;
++ samsung,pll-clk-freq = <24000000>;
++ samsung,cmd-allow = <0xf>;
++ vdd11-supply = <&ldo8_reg>;
++ vdd18-supply = <&ldo10_reg>;
++ status = "okay";
++ };
++
++ fimd@11c00000 {
++ samsung,fimd-display = <&fimd0_lcd>;
++ samsung,fimd-vidout-rgb;
++ samsung,fimd-inv-vclk;
++ samsung,fimd-frame-rate = <60>;
++ samsung,default-window = <3>;
++ samsung,fimd-win-bpp = <32>;
++ status = "okay";
++ };
++
++ g2d@10800000 {
++ status = "okay";
++ };
++
++ vidi {
++ compatible = "samsung,exynos-drm-vidi";
++ };
++
++ sysmmu-fimd0 {
++ clock-names = "sysmmu";
++ clocks = <&clock 287>;
++ mmu-master = <&fimd>;
++ };
++
++ sysmmu-g2d {
++ clock-names = "sysmmu";
++ clocks = <&clock 280>;
++ mmu-master = <&g2d>;
++ };
++
++ hsotg@12480000 {
++ status = "okay";
++ vusb_d-supply = <&ldo15_reg>;
++ vusb_a-supply = <&ldo12_reg>;
++ extcon = <&max_muic>;
++ };
++
++ ehci@12580000 {
++ status = "okay";
++ vusb_d-supply = <&ldo15_reg>;
++ vusb_a-supply = <&ldo12_reg>;
++ phys = <&exynos_usbphy 2>;
++ phy-names = "hsic0";
++ };
++
++ spi_1: spi@13930000 {
++ pinctrl-names = "default";
++ pinctrl-0 = <&spi1_bus>;
++ status = "okay";
++
++ s5c73m3_spi: s5c73m3 {
++ compatible = "samsung,s5c73m3";
++ spi-max-frequency = <50000000>;
++ reg = <0>;
++ controller-data {
++ cs-gpio = <&gpb 5 0>;
++ samsung,spi-feedback-delay = <2>;
++ };
++ };
++ };
++
++ camera {
++ status = "okay";
++
++ pinctrl-names = "default";
++ pinctrl-0 = <&cam_port_a_clk_active>;
++
++ fimc_0: fimc@11800000 {
++ clock-frequency = <176000000>;
++ status = "okay";
++ };
++
++ fimc_1: fimc@11810000 {
++ clock-frequency = <176000000>;
++ status = "okay";
++ };
++
++ fimc_2: fimc@11820000 {
++ clock-frequency = <176000000>;
++ status = "okay";
++ };
++
++ fimc_3: fimc@11830000 {
++ clock-frequency = <176000000>;
++ status = "okay";
++ };
++
++ csis_0: csis@11880000 {
++ status = "okay";
++ vddcore-supply = <&ldo8_reg>;
++ vddio-supply = <&ldo10_reg>;
++ clock-frequency = <176000000>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ /* Camera C (3) MIPI CSI-2 (CSIS0) */
++ port@3 {
++ reg = <3>;
++ csis0_ep: endpoint {
++ remote-endpoint = <&s5c73m3_ep>;
++ data-lanes = <1 2 3 4>;
++ samsung,csis-hs-settle = <12>;
++ };
++ };
++ };
++
++ csis_1: csis@11890000 {
++ status = "okay";
++ vddcore-supply = <&ldo8_reg>;
++ vddio-supply = <&ldo10_reg>;
++ clock-frequency = <176000000>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ /* Camera D (4) MIPI CSI-2 (CSIS1) */
++ port@4 {
++ reg = <4>;
++ csis1_ep: endpoint {
++ remote-endpoint = <&is_s5k6a3_ep>;
++ data-lanes = <1>;
++ samsung,csis-hs-settle = <18>;
++ samsung,csis-wclk;
++ };
++ };
++ };
++
++ fimc-is@12000000 {
++ status = "okay";
++ pinctrl-0 = <&fimc_is_uart>;
++ pinctrl-names = "default";
++ memory-region = <&fimc_mem>;
++
++ fimc_lite_0: fimc-lite@12390000 {
++ status = "okay";
++ };
++
++ fimc_lite_1: fimc-lite@123A0000 {
++ status = "okay";
++ };
++
++ i2c1_isp: i2c-isp@12140000 {
++ pinctrl-0 = <&fimc_is_i2c1>;
++ pinctrl-names = "default";
++
++ s5k6a3@10 {
++ compatible = "samsung,s5k6a3";
++ reg = <0x10>;
++ svdda-supply = <&cam_io_reg>;
++ svddio-supply = <&ldo19_reg>;
++ gpios = <&gpm1 6 0>;
++ clocks = <&camera 0>; /* CAM_A_CLKOUT */
++ clock-names = "extclk";
++ clock-frequency = <24000000>;
++
++ port {
++ is_s5k6a3_ep: endpoint {
++ remote-endpoint = <&csis1_ep>;
++ data-lanes = <1>;
++ };
++ };
++ };
++ };
++ };
++ };
++
++ codec@13400000 {
++ status = "okay";
++
++ memport@0 {
++ memory-region = <&mfc_l_mem>;
++ };
++
++ memport@1 {
++ memory-region = <&mfc_r_mem>;
++ };
++ };
++
++ i2s0: i2s@03830000 {
++ pinctrl-0 = <&i2s0_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++ };
++
++ sound {
++ compatible = "samsung,exynos4-wm1811";
++ clocks = <&clock 2>, <&clock 396>, <&clock 21>, <&clock 6>;
++ clock-names = "parent", "out-mux", "out", "pll" /* EPLL */;
++ samsung,i2s-controller = <&i2s0>;
++ samsung,audio-codec = <&wm1811>;
++ samsung,model = "wm1811";
++ samsung,mic-availability = <1 1>;
++ samsung,mic-en-gpios = <&gpf1 7 0>, <&gpf2 0 0>;
++ };
++
++ gpu@13000000 {
++ status = "okay";
++ vdd_g3d-supply = <&buck4_reg>;
++ };
++
++ cpufreq {
++ freq_table = <0xFFFFFFFF 0xFFFFFFFF 0xFFFFFFFF 1100000 1000000
++ 900000 800000 700000 600000 500000 400000 300000
++ 200000>;
++ vdd_arm-supply = <&buck2_reg>;
++ status = "okay";
++ };
++
++ modem_if {
++ compatible = "samsung,modem_if";
++ reset-req-gpio = <&gpm3 3 0>;
++ cp-on-gpio = <&gpl2 5 0>;
++ cp-reset-gpio = <&gpx3 2 0>;
++ pda-active-gpio = <&gpf1 6 0>;
++
++ phone-active-gpio = <&gpx1 6 0>;
++ cp-dump-int-gpio = <&gpx1 2 0>;
++
++ ap-dump-int-gpio = <0>;
++ flm_uart_sel = <0>;
++ cp_warm_reset = <0>;
++ sim_detect = <0>;
++
++ link-slavewake-gpio = <&gpx1 0 0>;
++ link-hostwake-gpio = <&gpx1 1 0>;
++ link-active-gpio = <&gpf1 1 0>;
++ link-enable-gpio = <0>;
++
++ modem-type = "xmm6262";
++ link-type = "hsic";
++ modem-net = "umts";
++ use-handover = <0>;
++
++ pinctrl-names = "default", "active";
++ pinctrl-0 = <&modem_state_off>;
++ pinctrl-1 = <&modem_state_active>;
++ };
++
++ charger-manager@0 {
++ compatible = "charger-manager";
++ status = "okay";
++ vinchg1-supply = <&charger_reg>;
++
++ cm-name = "battery";
++ cm-poll-mode = <2>;
++ cm-poll-interval = <30000>;
++
++ cm-fullbatt-vchkdrop-ms = <30000>;
++ cm-fullbatt-vchkdrop-volt = <150000>;
++ cm-fullbatt-soc = <100>;
++
++ cm-battery-stat = <3>;
++
++ cm-battery-cold = <50>;
++ cm-battery-cold-in-minus;
++ cm-battery-hot = <650>;
++ cm-battery-temp-diff = <150>;
++
++ cm-num-chargers = <1>;
++ cm-chargers = "max77693-charger";
++
++ cm-fuel-gauge = "max170xx_battery";
++ cm-battery-has-therm;
++
++ cm-charging-max = <21600000>;
++ cm-discharging-max = <540000>;
++
++ regulator@0 {
++ cm-regulator-name = "vinchg1";
++ cable@0 {
++ cm-cable-name = "USB";
++ cm-cable-extcon = "max77693-muic";
++ cm-cable-min = <475000>;
++ cm-cable-max = <500000>;
++ };
++ cable@1 {
++ cm-cable-name = "TA";
++ cm-cable-extcon = "max77693-muic";
++ cm-cable-min = <650000>;
++ cm-cable-max = <675000>;
++ };
++ cable@2 {
++ cm-cable-name = "Slow-charger";
++ cm-cable-extcon = "max77693-muic";
++ cm-cable-min = <650000>;
++ cm-cable-max = <675000>;
++ };
++ cable@3 {
++ cm-cable-name = "Fast-charger";
++ cm-cable-extcon = "max77693-muic";
++ cm-cable-min = <650000>;
++ cm-cable-max = <675000>;
++ };
++ cable@4 {
++ cm-cable-name = "MHL";
++ cm-cable-extcon = "max77693-muic";
++ cm-cable-min = <475000>;
++ cm-cable-max = <500000>;
++ };
++ };
++
++ };
++
++ fixed-regulators {
++ compatible = "simple-bus";
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ wlan_reg: voltage-regulator@7 {
++ compatible = "regulator-fixed";
++ reg = <7>;
++ regulator-name = "WL_REG_ON";
++ regulator-min-microvolt = <1800000>;
++ regulator-max-microvolt = <1800000>;
++ gpio = <&gpj0 0 0>;
++ enable-active-high;
++ };
++ };
++
++ wlan {
++ compatible = "brcm,bcm4334";
++ wlan-supply = <&wlan_reg>;
++ interrupt-parent = <&gpx2>;
++ interrupts = <5 4>;
++ clocks = <&max77686 2>;
++ clock-names = "32khz";
++ pinctrl-names = "default";
++ pinctrl-0 = <&wlan_int>;
++ };
++
++ sdhci@12540000 {
++ bus-width = <4>;
++ broken-cd;
++ pinctrl-0 = <&sd3_clk &sd3_cmd &sd3_bus4>;
++ pinctrl-names = "default";
++ status = "okay";
++ };
++
++
++ exynos-usbphy@125B0000 {
++ status = "okay";
++ };
++
++ adc: adc@126C0000 {
++ compatible = "samsung,exynos-adc-v1";
++ reg = <0x126C0000 0x20>, <0x10020718 0x4>;
++ interrupt-parent = <&combiner>;
++ interrupts = <10 3>;
++ #io-channel-cells = <1>;
++ clocks = <&clock 326>;
++ clock-names = "adc";
++ vdd-supply = <&ldo3_reg>;
++ status = "ok";
++ };
++
++ tmu@100C0000 {
++ vtmu-supply = <&ldo10_reg>;
++ status = "okay";
++ };
++
++ vsil: voltage-regulator-vsil {
++ compatible = "regulator-fixed";
++ regulator-name = "HDMI_5V";
++ regulator-min-microvolt = <5000000>;
++ regulator-max-microvolt = <5000000>;
++ gpio = <&gpl0 4 0>;
++ enable-active-high;
++ vin-supply = <&buck7_reg>;
++ };
++
++ i2c-mhl {
++ compatible = "i2c-gpio";
++ gpios = <&gpf0 4 0 &gpf0 6 0>;
++ i2c-gpio,delay-us = <100>;
++ #address-cells = <1>;
++ #size-cells = <0>;
++
++ pinctrl-0 = <&i2c_mhl_bus>;
++ pinctrl-names = "default";
++ status = "okay";
++
++ sii9234: sii9234@39 {
++ compatible = "sii,sii9234";
++ vcc-supply = <&vsil>;
++ gpio-reset = <&gpf3 4 0>;
++ gpio-int = <&gpf3 5 0>;
++ reg = <0x39>;
++ extcon = <&max_muic>;
++ };
++ };
++
++ i2c@138B0000 {
++ hdmiddc@37 {
++ compatible = "samsung,exynos5-hdmiddc";
++ reg = <0x37>;
++ };
++ };
++
++ hdmi@12D00000 {
++ hpd-gpio = <&gpx3 7 0>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&hdmi_hpd>;
++ /*
++ * HDMI_EN gpio is controlled by SII9234, so hdmi-en should
++ * be a dummy regulator. Therefore LDO3 is used instead
++ * because it is enabled at the same time as hdmi-en
++ */
++ hdmi-en-supply = <&ldo3_reg>;
++ vdd-supply = <&ldo3_reg>;
++ vdd_osc-supply = <&ldo4_reg>;
++ vdd_pll-supply = <&ldo3_reg>;
++ status = "okay";
++ max-pixel-clock = <75000000>;
++ };
++};
++
++&pinctrl_1 {
++ modem_state_active: modem-state-active {
++ samsung,pins = "gpx1-6", "gpx1-1", "gpx1-2";
++ samsung,pin-pud = <0>;
++ };
++ modem_state_off: modem-state-off {
++ samsung,pins = "gpx1-6", "gpx1-1", "gpx1-2";
++ samsung,pin-pud = <1>;
++ };
++
++ wlan_int: wlan-irq {
++ samsung,pins = "gpx2-5";
++ samsung,pin-pud = <1>;
++ };
++
++ hdmi_hpd: hdmi-hpd {
++ samsung,pins = "gpx3-7";
++ samsung,pin-pud = <1>;
++ };
++};
++
++&pinctrl_0 {
++ mhl_int: mhl-int {
++ samsung,pins = "gpf3-5";
++ samsung,pin-pud = <0>;
++ };
++ i2c_mhl_bus: i2c-mhl-bus {
++ samsung,pins = "gpf0-4", "gpf0-6";
++ samsung,pin-function = <2>;
++ samsung,pin-pud = <1>;
++ samsung,pin-drv = <0>;
++ };
++};
+--
+1.8.3.2
+