/*
 * Copyright (c) 2013-2014, The Linux Foundation. All rights reserved.
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License version 2 and
 * only version 2 as published by the Free Software Foundation.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 */

&soc {

	led_flash0: qcom,camera-led-flash {
		cell-index = <0>;
		compatible = "qcom,camera-led-flash";
		qcom,flash-type = <1>;
		qcom,flash-source = <&pm8226_flash0>;
		qcom,torch-source = <&pm8226_torch>;
	};
};

&cci {

	actuator0: qcom,actuator@6e {
		cell-index = <5>;
		reg = <0x18>;
		compatible = "qcom,actuator";
		qcom,cci-master = <0>;
	};

	eeprom2: qcom,eeprom@6b{
		cell-index = <2>;
		reg = <0x6b>;
		qcom,eeprom-name = "ofilm_oty5f03";
		compatible = "qcom,eeprom";
		qcom,slave-addr = <0x6c>;
		qcom,cci-master = <0>;
		qcom,num-blocks = <7>;

		qcom,page0 = <1 0x0100 2 0x01 1 1>;
		qcom,poll0 = <0 0x0 2 0 1 1>;
		qcom,mem0 = <0 0x0 2 0 1 0>;
		qcom,page1 = <1 0x3d84 2 0xc0 1 1>;
		qcom,poll1 = <0 0x0 2 0 1 1>;
		qcom,mem1 = <0 0x0 2 0 1 0>;
		qcom,page2 = <1 0x3d85 2 0x00 1 1>;
		qcom,poll2 = <0 0x0 2 0 1 1>;
		qcom,mem2 = <0 0x0 2 0 1 0>;
		qcom,page3 = <1 0x3d86 2 0x0f 1 1>;
		qcom,pageen3 = <1 0x3d81 2 0x01 1 10>;
		qcom,poll3 = <0 0x0 2 0 1 1>;
		qcom,mem3 = <16 0x3d00 2 0 1 0>;
		qcom,page4 = <1 0x3d84 2 0xc0 1 1>;
		qcom,poll4 = <0 0x0 2 0 1 1>;
		qcom,mem4 = <0 0x0 2 0 1 0>;
		qcom,page5 = <1 0x3d85 2 0x10 1 1>;
		qcom,poll5 = <0 0x0 2 0 1 1>;
		qcom,mem5 = <0 0x0 2 0 1 0>;
		qcom,page6 = <1 0x3d86 2 0x1f 1 1>;
		qcom,pageen6 = <1 0x3d81 2 0x01 1 10>;
		qcom,poll6 = <0 0x0 2 0 1 1>;
		qcom,mem6 = <16 0x3d00 2 0 1 0>;

		cam_vio-supply = <&pm8226_lvs1>;
		cam_vana-supply = <&pm8226_l19>;
		qcom,cam-vreg-name = "cam_vio", "cam_vana";
		qcom,cam-vreg-type = <1 0>;
		qcom,cam-vreg-min-voltage = <0 2850000>;
		qcom,cam-vreg-max-voltage = <0 2850000>;
		qcom,cam-vreg-op-mode = <0 80000>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
		        <&msmgpio 28 0>,
		        <&msmgpio 35 0>,
		        <&msmgpio 21 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-vdig = <3>;
		qcom,gpio-req-tbl-num = <0 1 2 3>;
		qcom,gpio-req-tbl-flags = <1 0 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
		        "CAM_RESET",
		        "CAM_STANDBY",
		        "CAM_VDIG";
		qcom,cam-power-seq-type = "sensor_vreg",
		        "sensor_vreg", "sensor_gpio",
		        "sensor_gpio", "sensor_gpio" , "sensor_clk";
		qcom,cam-power-seq-val = "cam_vio", "cam_vana","sensor_gpio_vdig",
		         "sensor_gpio_reset",
		        "sensor_gpio_standby","sensor_cam_mclk" ;
		qcom,cam-power-seq-cfg-val = <1 1 1 1 1 24000000>;
		qcom,cam-power-seq-delay = <1 1 10 10 10 5>;
	};

	eeprom3: qcom,eeprom@6c {
		cell-index = <3>;
		reg = <0x6c>;
		qcom,eeprom-name = "sunny_q8v18a";
		compatible = "qcom,eeprom";
		qcom,slave-addr = <0x20>;
		qcom,cci-master = <0>;
		qcom,num-blocks = <4>;
		qcom,page0 = <1 0x0100 2 0x01 1 1>;
		qcom,poll0 = <0 0x0 2 0 1 1>;
		qcom,mem0 = <0 0x0 2 0 1 0>;
		qcom,page1 = <1 0x3d84 2 0xc0 1 1>;
		qcom,poll1 = <0 0x0 2 0 1 1>;
		qcom,mem1 = <0 0x3d00 2 0 1 0>;
		qcom,page2 = <1 0x3d88 2 0x7010 2 1>;
		qcom,poll2 = <0 0x0 2 0 1 1>;
		qcom,mem2 = <0 0x3d00 2 0 1 0>;
		qcom,page3 = <1 0x3d8A 2 0x70F4 2 1>;
		qcom,pageen3 = <1 0x3d81 2 0x01 1 10>;
		qcom,poll3 = <0 0x0 2 0 1 1>;
		qcom,mem3 = <228 0x7010 2 0 1 1>;

		cam_vdig-supply = <&pm8226_l5>;
		cam_vana-supply = <&pm8226_l19>;
		cam_vio-supply = <&pm8226_lvs1>;
		qcom,cam-vreg-name = "cam_vdig","cam_vana", "cam_vio";
		qcom,cam-vreg-type = <0 1 2>;
		qcom,cam-vreg-min-voltage = <1200000 2850000 0>;
		qcom,cam-vreg-max-voltage = <1200000 2850000 0>;
		qcom,cam-vreg-op-mode = <200000 80000 0>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
		        <&msmgpio 37 0>,
		        <&msmgpio 36 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-req-tbl-num = <0 1 2>;
		qcom,gpio-req-tbl-flags = <1 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
		        "CAM_RESET1",
		        "CAM_STANDBY";
		qcom,cam-power-seq-type = "sensor_vreg","sensor_vreg",
		        "sensor_vreg", "sensor_clk",
		        "sensor_gpio", "sensor_gpio";
		qcom,cam-power-seq-val = "cam_vdig","cam_vana",
		        "cam_vio", "sensor_cam_mclk",
		        "sensor_gpio_reset",
		        "sensor_gpio_standby";
		qcom,cam-power-seq-cfg-val = <1 1 1 24000000 1 1>;
		qcom,cam-power-seq-delay = <1 1 1 5 5 10>;
	};

	qcom,camera@20 {
		compatible = "ovti,ov8865";
		reg = <0x20>;
		qcom,slave-id = <0x20 0x300b 0x8865>;
		qcom,csiphy-sd-index = <0>;
		qcom,csid-sd-index = <0>;
		qcom,actuator-src = <&actuator0>;
		qcom,led-flash-src = <&led_flash0>;
		qcom,eeprom-src = <&eeprom3>;
		qcom,mount-angle = <90>;
		qcom,sensor-name = "ov8865_q8v18a";
		cam_vdig-supply = <&pm8226_l5>;
		cam_vana-supply = <&pm8226_l19>;
		cam_vio-supply = <&pm8226_lvs1>;
		cam_vaf-supply = <&pm8226_l15>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
		                                         "cam_vaf";
		qcom,cam-vreg-type = <0 1 0 0>;
		qcom,cam-vreg-min-voltage = <1200000 0 2850000 2800000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2850000 2800000>;
		qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
		        <&msmgpio 37 0>,
		        <&msmgpio 36 0>,
		        <&msmgpio 15 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-af-pwdm = <3>;
		qcom,gpio-req-tbl-num = <0 1 2 3>;
		qcom,gpio-req-tbl-flags = <1 0 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
		        "CAM_RESET1",
		        "CAM_STANDBY",
		        "CAM_AF_PWDM";
		qcom,csi-lane-assign = <0x4320>;
		qcom,csi-lane-mask = <0x1F>;
		qcom,sensor-position = <0>;
		qcom,sensor-mode = <1>;
		qcom,cci-master = <0>;
	};

	qcom,camera@6a {
		compatible = "ovti,ov5648";
		reg = <0x6a>;
		qcom,slave-id = <0x6c 0x300a 0x5648>;
		qcom,csiphy-sd-index = <1>;
		qcom,csid-sd-index = <1>;
		qcom,eeprom-src = <&eeprom2>;
		qcom,mount-angle = <270>;
		qcom,sensor-name = "ov5648_oty5f03";
		cam_vana-supply = <&pm8226_l19>;
		cam_vio-supply = <&pm8226_lvs1>;
		qcom,cam-vreg-name = "cam_vio", "cam_vana";
		qcom,cam-vreg-type = <1 0>;
		qcom,cam-vreg-min-voltage = <0 2850000>;
		qcom,cam-vreg-max-voltage = <0 2850000>;
		qcom,cam-vreg-op-mode = <0 80000>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
				<&msmgpio 28 0>,
				<&msmgpio 35 0>,
				<&msmgpio 23 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-vdig = <3>;
		qcom,gpio-req-tbl-num = <0 1 2 3>;
		qcom,gpio-req-tbl-flags = <1 0 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
				"CAM_RESET",
				"CAM_STANDBY",
				"CAM_VDIG";
		qcom,gpio-set-tbl-num = <1 1>;
		qcom,gpio-set-tbl-flags = <0 2>;
		qcom,gpio-set-tbl-delay = <1000 4000>;
		qcom,csi-lane-assign = <0x4320>;
		qcom,csi-lane-mask = <0x3>;
		qcom,sensor-position = <1>;
		qcom,sensor-mode = <1>;
		qcom,cci-master = <0>;
		status = "ok";
	};

	qcom,camera@0 {
		cell-index = <0>;
		compatible = "qcom,camera";
		reg = <0x00>;
		qcom,csiphy-sd-index = <0>;
		qcom,csid-sd-index = <0>;
		qcom,actuator-src = <&actuator0>;
		qcom,led-flash-src = <&led_flash0>;
		qcom,mount-angle = <90>;
		cam_vdig-supply = <&pm8226_l5>;
		cam_vana-supply = <&pm8226_l19>;
		cam_vio-supply = <&pm8226_lvs1>;
		cam_vaf-supply = <&pm8226_l15>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
		                                         "cam_vaf";
		qcom,cam-vreg-type = <0 1 0 0>;
		qcom,cam-vreg-min-voltage = <1200000 0 2850000 2800000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2850000 2800000>;
		qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
		        <&msmgpio 37 0>,
		        <&msmgpio 36 0>,
		        <&msmgpio 15 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-af-pwdm = <3>;
		qcom,gpio-req-tbl-num = <0 1 2 3>;
		qcom,gpio-req-tbl-flags = <1 0 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
		        "CAM_RESET1",
		        "CAM_STANDBY",
		        "CAM_AF_PWDM";
		qcom,cci-master = <0>;
		status = "ok";
	};

	qcom,camera@1 {
		cell-index = <1>;
		compatible = "qcom,camera";
		reg = <0x01>;
		qcom,csiphy-sd-index = <1>;
		qcom,csid-sd-index = <1>;
		qcom,mount-angle = <270>;
		cam_vdig-supply = <&pm8226_l5>;
		cam_vana-supply = <&pm8226_l19>;
		cam_vio-supply = <&pm8226_lvs1>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana";
		qcom,cam-vreg-type = <0 1 0>;
		qcom,cam-vreg-min-voltage = <1200000 0 2850000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2850000>;
		qcom,cam-vreg-op-mode = <200000 0 80000>;
		qcom,gpio-no-mux = <0>;
		gpios = <&msmgpio 26 0>,
				<&msmgpio 28 0>,
				<&msmgpio 35 0>,
				<&msmgpio 23 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-standby = <2>;
		qcom,gpio-vdig = <3>;
		qcom,gpio-req-tbl-num = <0 1 2 3>;
		qcom,gpio-req-tbl-flags = <1 0 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK",
				"CAM_RESET",
				"CAM_STANDBY",
				"CAM_VDIG";
		qcom,cci-master = <0>;
		status = "ok";
	};
};
