/*
 * Copyright (c) 2015-2016, 2018 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.
 */

&cci {
	actuator0: qcom,actuator@0 {
		cell-index = <0>;
		reg = <0x0>;
		compatible = "qcom,actuator";
		qcom,cci-master = <0>;
		cam_vaf-supply = <&pm8953_l17>;
		qcom,cam-vreg-name = "cam_vaf";
		qcom,cam-vreg-min-voltage = <2850000>;
		qcom,cam-vreg-max-voltage = <2850000>;
		qcom,cam-vreg-op-mode = <80000>;
	};

	actuator1: qcom,actuator@1 {
		cell-index = <1>;
		reg = <0x1>;
		compatible = "qcom,actuator";
		qcom,cci-master = <0>;
		cam_vaf-supply = <&pm8953_l17>;
		qcom,cam-vreg-name = "cam_vaf";
		qcom,cam-vreg-min-voltage = <2850000>;
		qcom,cam-vreg-max-voltage = <2850000>;
		qcom,cam-vreg-op-mode = <80000>;
	};

	eeprom0: qcom,eeprom@0 {
		cell-index = <0>;
		compatible = "qcom,eeprom";
		qcom,cci-master = <0>;
		reg = <0x0>;
		cam_vana-supply = <&pm8953_l22>;
		cam_vio-supply = <&pm8953_l6>;
		cam_vaf-supply = <&pm8953_l17>;
		cam_vdig-supply = <&pm8953_l3>;
		qcom,cam-vreg-name = "cam_vana", "cam_vio",
					"cam_vdig", "cam_vaf";
		qcom,cam-vreg-min-voltage = <2800000 0 1200000 2850000>;
		qcom,cam-vreg-max-voltage = <2800000 0 1200000 2850000>;
		qcom,cam-vreg-op-mode = <80000 0 200000 100000>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk0_default
			&cam_sensor_rear_reset
			&cam_sensor_rear_vana>;
		pinctrl-1 = <&cam_sensor_mclk0_sleep
			&cam_sensor_rear_reset_sleep
			&cam_sensor_rear_vana_sleep>;
		gpios = <&tlmm 26 0>,
			<&tlmm 36 0>,
			<&tlmm 35 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-vana = <2>;
		qcom,gpio-req-tbl-num = <0 1 2>;
		qcom,gpio-req-tbl-flags = <1 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
			"CAM_RESET0",
			"CAM_VANA";
		status = "ok";
		clocks = <&clock_gcc clk_mclk0_clk_src>,
			<&clock_gcc clk_gcc_camss_mclk0_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <19200000 0>;
	};

	eeprom1: qcom,eeprom@1 {
		cell-index = <1>;
		reg = <0x1>;
		qcom,eeprom-name = "sunny_8865";
		compatible = "qcom,eeprom";
		qcom,slave-addr = <0x6c>;
		qcom,cci-master = <0>;
		qcom,num-blocks = <8>;

		qcom,page0 = <1 0x0100 2 0x01 1 1>;
		qcom,poll0 = <0 0x0 2 0x0 1 0>;
		qcom,mem0 = <0 0x0 2 0x0 1 0>;

		qcom,page1 = <1 0x5002 2 0x00 1 0>;
		qcom,poll1 = <0 0x0 2 0x0 1 0>;
		qcom,mem1 = <0 0x0 2 0x0 1 0>;

		qcom,page2 = <1 0x3d84 2 0xc0 1 0>;
		qcom,poll2 = <0 0x0 2 0x0 1 0>;
		qcom,mem2 = <0 0x0 2 0x0 1 0>;

		qcom,page3 = <1 0x3d88 2 0x70 1 0>;
		qcom,poll3 = <0 0x0 2 0x0 1 0>;
		qcom,mem3 = <0 0x0 2 0x0 1 0>;

		qcom,page4 = <1 0x3d89 2 0x10 1 0>;
		qcom,poll4 = <0 0x0 2 0x0 1 0>;
		qcom,mem4 = <0 0x0 2 0x0 1 0>;

		qcom,page5 = <1 0x3d8a 2 0x70 1 0>;
		qcom,poll5 = <0 0x0 2 0x0 1 0>;
		qcom,mem5 = <0 0x0 2 0x0 1 0>;

		qcom,page6 = <1 0x3d8b 2 0xf4 1 0>;
		qcom,poll6 = <0 0x0 2 0x0 1 0>;
		qcom,mem6 = <0 0x0 2 0x0 1 0>;

		qcom,page7 = <1 0x3d81 2 0x01 1 10>;
		qcom,poll7 = <0 0x0 2 0x0 1 1>;
		qcom,mem7 = <1536 0x7010 2 0 1 0>;

		cam_vdig-supply = <&pm8953_l23>;
		cam_vana-supply = <&pm8953_l22>;
		cam_vio-supply = <&pm8953_l6>;
		cam_vaf-supply = <&pm8953_l17>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio",
				"cam_vana", "cam_vaf";
		qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-op-mode = <105000 0 80000 100000>;
		qcom,gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_default
			&cam_sensor_front1_default>;
		pinctrl-1 = <&cam_sensor_mclk2_sleep
			&cam_sensor_front1_sleep>;
		gpios = <&tlmm 28 0>,
			<&tlmm 40 0>,
			<&tlmm 39 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_MCLK2",
					  "CAM_RESET2",
					  "CAM_STANDBY2";
		qcom,cam-power-seq-type = "sensor_vreg", "sensor_vreg",
			"sensor_vreg",
			"sensor_gpio", "sensor_gpio" , "sensor_clk";
		qcom,cam-power-seq-val = "cam_vdig", "cam_vana", "cam_vio",
			"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 1 30 30 5>;
		status = "ok";
		clocks = <&clock_gcc clk_mclk2_clk_src>,
			<&clock_gcc clk_gcc_camss_mclk2_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <19200000 0>;
	};

	qcom,camera@0 {
		cell-index = <0>;
		compatible = "qcom,camera";
		reg = <0x0>;
		qcom,csiphy-sd-index = <0>;
		qcom,csid-sd-index = <0>;
		qcom,mount-angle = <90>;
		qcom,led-flash-src = <&led_flash0>;
		qcom,eeprom-src = <&eeprom0>;
		qcom,actuator-src = <&actuator0>;
		cam_vana-supply = <&pm8953_l22>;
		cam_vio-supply = <&pm8953_l6>;
		cam_vaf-supply = <&pm8953_l17>;
		cam_vdig-supply = <&pm8953_l3>;
		qcom,cam-vreg-name = "cam_vana", "cam_vio",
				"cam_vdig", "cam_vaf";
		qcom,cam-vreg-min-voltage = <2800000 0 1200000 2850000>;
		qcom,cam-vreg-max-voltage = <2800000 0 1200000 2850000>;
		qcom,cam-vreg-op-mode = <80000 0 200000 100000>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk0_default
				&cam_sensor_rear_reset
				&cam_sensor_rear_vana>;
		pinctrl-1 = <&cam_sensor_mclk0_sleep
				&cam_sensor_rear_reset_sleep
				&cam_sensor_rear_vana_sleep>;
		gpios = <&tlmm 26 0>,
			<&tlmm 36 0>,
			<&tlmm 35 0>;
		qcom,gpio-reset = <1>;
		qcom,gpio-vana = <2>;
		qcom,gpio-req-tbl-num = <0 1 2>;
		qcom,gpio-req-tbl-flags = <1 0 0>;
		qcom,gpio-req-tbl-label = "CAMIF_MCLK0",
			"CAM_RESET0",
			"CAM_VANA";
		qcom,sensor-position = <0>;
		qcom,sensor-mode = <0>;
		qcom,cci-master = <0>;
		status = "ok";
		clocks = <&clock_gcc clk_mclk0_clk_src>,
				<&clock_gcc clk_gcc_camss_mclk0_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <24000000 0>;
	};

	qcom,camera@1 {
		cell-index = <1>;
		compatible = "qcom,camera";
		reg = <0x1>;
		qcom,csiphy-sd-index = <1>;
		qcom,csid-sd-index = <1>;
		qcom,mount-angle = <270>;
		cam_vdig-supply = <&pm8953_l3>;
		cam_vana-supply = <&pm8953_l22>;
		cam_vio-supply = <&pm8953_l6>;
		cam_vaf-supply = <&pm8953_l17>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
							"cam_vaf";
		qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-op-mode = <200000 0 80000 100000>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk1_default
				&cam_sensor_front_default>;
		pinctrl-1 = <&cam_sensor_mclk1_sleep
				&cam_sensor_front_sleep>;
		gpios = <&tlmm 27 0>,
			<&tlmm 38 0>,
			<&tlmm 50 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_MCLK1",
			"CAM_RESET1",
			"CAM_STANDBY1";
		qcom,sensor-position = <0x100>;
		qcom,sensor-mode = <1>;
		qcom,cci-master = <1>;
		clocks = <&clock_gcc clk_mclk1_clk_src>,
				<&clock_gcc clk_gcc_camss_mclk1_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <24000000 0>;
	};

	qcom,camera@2 {
		cell-index = <2>;
		compatible = "qcom,camera";
		reg = <0x02>;
		qcom,csiphy-sd-index = <1>;
		qcom,csid-sd-index = <1>;
		qcom,mount-angle = <270>;
		qcom,eeprom-src = <&eeprom1>;
		qcom,actuator-src = <&actuator1>;
		cam_vdig-supply = <&pm8953_l3>;
		cam_vana-supply = <&pm8953_l22>;
		cam_vio-supply = <&pm8953_l6>;
		cam_vaf-supply = <&pm8953_l17>;
		qcom,cam-vreg-name = "cam_vdig", "cam_vio", "cam_vana",
					"cam_vaf";
		qcom,cam-vreg-min-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-max-voltage = <1200000 0 2800000 2850000>;
		qcom,cam-vreg-op-mode = <105000 0 80000 100000>;
		qcom,gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_default
				&cam_sensor_front1_default>;
		pinctrl-1 = <&cam_sensor_mclk2_sleep
				&cam_sensor_front1_sleep>;
		gpios = <&tlmm 27 0>,
			<&tlmm 38 0>,
			<&tlmm 39 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_MCLK2",
					  "CAM_RESET2",
					  "CAM_STANDBY2";
		qcom,sensor-position = <1>;
		qcom,sensor-mode = <0>;
		qcom,cci-master = <0>;
		status = "ok";
		clocks = <&clock_gcc clk_mclk2_clk_src>,
			<&clock_gcc clk_gcc_camss_mclk2_clk>;
		clock-names = "cam_src_clk", "cam_clk";
		qcom,clock-rates = <24000000 0>;
	};
};
