Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b0b5f961 authored by Linux Build Service Account's avatar Linux Build Service Account
Browse files

Merge 4ac996f3 on remote branch

Change-Id: I33edb075fde713288aabe96b2317e34205db8783
parents ff68e5da 4ac996f3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@ First Level Node - CSIPHY device
  Definition: Should be "qcom,csiphy-v1.0",
	"qcom,csiphy-v1.1", "qcom,csiphy-v1.2", "qcom,csiphy-v1.2.1",
	"qcom,csiphy-v1.2.2", "qcom,csiphy-v2.0", "qcom,csiphy-v1.2.2.2",
	"qcom,csiphy".
	"qcom,csiphy-v1.2.3", "qcom,csiphy".

- cell-index: csiphy hardware core index
  Usage: required
+19 −13
Original line number Diff line number Diff line
@@ -49,18 +49,24 @@
	qcom,cam-res-mgr {
		compatible = "qcom,cam-res-mgr";
		status = "ok";
		shared-gpios = <84 83 82 114 145>;
		shared-gpios = <1184 1183 1182 1214 1245 1217 1216 1215>;
		pinctrl-names = "cam_res_mgr_default", "cam_res_mgr_suspend";
		pinctrl-0 = <&cam_sensor_6dof_vana_active
				&cam_sensor_6dof_vdig_active
				&cam_sensor_6dof_vio_active
				&cam_sensor_active_6
				&cam_sensor_et_vio_active>;
				&cam_sensor_et_vana_active
				&cam_sensor_et_vio_active
				&cam_sensor_rgb_vana_active
				&cam_sensor_rgb_vio_active
				&cam_sensor_rgb_vdig_active>;
		pinctrl-1 = <&cam_sensor_6dof_vana_suspend
				&cam_sensor_6dof_vdig_suspend
				&cam_sensor_6dof_vio_suspend
				&cam_sensor_suspend_6
				&cam_sensor_et_vio_suspend>;
				&cam_sensor_et_vana_suspend
				&cam_sensor_et_vio_suspend
				&cam_sensor_rgb_vana_suspend
				&cam_sensor_rgb_vio_suspend
				&cam_sensor_rgb_vdig_suspend>;
	};
};

@@ -587,7 +593,7 @@
		clock-rates = <24000000>;
	};

	/* ET LEFT (Master) */
	/* ET Left (Master) */
	qcom,cam-sensor0 {
		cell-index = <0>;
		compatible = "qcom,cam-sensor";
@@ -598,14 +604,14 @@
		cam_vio-supply = <&pm8009_l7>;
		cam_bob-supply = <&pm8150a_bob>;
		cam_vana-supply = <&pm8009_l6>;
		cam_vdig-supply = <&pm8009_l1>;
		cam_vdig-supply = <&pm8009_l2>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_bob";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1104000 0 3008000>;
		rgltr-max-voltage = <1800000 3000000 1104000 0 3960000>;
		rgltr-min-voltage = <1800000 2800000 1200000 0 3008000>;
		rgltr-max-voltage = <1800000 3000000 1200000 0 3960000>;
		rgltr-load-current = <600000 80000 1200000 0 2000000>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
@@ -635,7 +641,7 @@
		clock-rates = <24000000>;
	};

	/* ET RIGHT (Left) */
	/* ET Right (Slave) */
	qcom,cam-sensor1 {
		cell-index = <1>;
		compatible = "qcom,cam-sensor";
@@ -643,10 +649,10 @@
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		cam_bob-supply = <&pm8150a_bob>;
		cam_vdig-supply = <&pm8009_l2>;
		cam_vio-supply = <&pm8009_l7>;
		cam_bob-supply = <&pm8150a_bob>;
		cam_vana-supply = <&pm8009_l6>;
		cam_vdig-supply = <&pm8009_l2>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_bob";
+421 −0
Original line number Diff line number Diff line
#include <dt-bindings/clock/qcom,camcc-lagoon.h>

&soc {
	led_flash_triple_rear: qcom,camera-flash@4 {
		cell-index = <4>;
		reg = <0x04 0x00>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm6150l_flash0 &pm6150l_flash1>;
		torch-source = <&pm6150l_torch0 &pm6150l_torch1>;
		switch-source = <&pm6150l_switch2>;
	};

	led_flash_triple_rear_aux: qcom,camera-flash@5 {
		cell-index = <5>;
		reg = <0x05 0x00>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm6150l_flash0 &pm6150l_flash1>;
		torch-source = <&pm6150l_torch0 &pm6150l_torch1>;
		switch-source = <&pm6150l_switch2>;
	};

	led_flash_triple_rear_aux2: qcom,camera-flash@6 {
		cell-index = <6>;
		reg = <0x06 0x00>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm6150l_flash0 &pm6150l_flash1>;
		torch-source = <&pm6150l_torch0 &pm6150l_torch1>;
		switch-source = <&pm6150l_switch2>;
	};

	qcom,cam-res-mgr {
		compatible = "qcom,cam-res-mgr";
		status = "ok";
	};
};

&cam_cci0 {
	actuator_triple_rear: qcom,actuator@4 {
		cell-index = <4>;
		reg = <0x4>;
		compatible = "qcom,actuator";
		cci-device = <0>;
		cci-master = <0>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <2800000>;
		rgltr-max-voltage = <2800000>;
		rgltr-load-current = <100000>;
		status = "ok";
	};

	actuator_triple_rear_aux: qcom,actuator@5 {
		cell-index = <5>;
		reg = <0x5>;
		compatible = "qcom,actuator";
		cci-device = <0>;
		cci-master = <1>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <2800000>;
		rgltr-max-voltage = <2800000>;
		rgltr-load-current = <100000>;
		status = "ok";
	};

	eeprom_triple_rear: qcom,eeprom@4 {
		cell-index = <4>;
		reg = <4>;
		compatible = "qcom,eeprom";
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L4P>;
		cam_vdig-supply = <&L2P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <1800000 2904000 1104000 0 2800000>;
		rgltr-max-voltage = <1800000 2904000 1104000 0 2800000>;
		rgltr-load-current = <0 80000 105000 0 100000>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk0_active
				&cam_sensor_active_rear>;
		pinctrl-1 = <&cam_sensor_mclk0_suspend
				&cam_sensor_suspend_rear>;
		gpios = <&tlmm 29 0>,
			<&tlmm 34 0>,
			<&tlmm 50 0>;
		gpio-reset = <1>;
		gpio-vana = <2>;
		gpio-req-tbl-num = <0 1 2>;
		gpio-req-tbl-flags = <1 0 0>;
		gpio-req-tbl-label = "CAMIF_MCLK4",
					"CAM_RESET4",
					"CAM_VANA4";
		sensor-mode = <0>;
		cci-device = <0>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK0_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	eeprom_triple_rear_aux: qcom,eeprom@5 {
		cell-index = <5>;
		reg = <5>;
		compatible = "qcom,eeprom";
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L3P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <1800000 2800000 1056000 0 2800000>;
		rgltr-max-voltage = <1800000 2800000 1056000 0 2800000>;
		rgltr-load-current = <0 2000000 105000 0 100000>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk1_active
				&cam_sensor_active_rear_aux>;
		pinctrl-1 = <&cam_sensor_mclk1_suspend
				&cam_sensor_suspend_rear_aux>;
		gpios = <&tlmm 30 0>,
			<&tlmm 35 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK5",
					"CAM_RESET5";
		sensor-mode = <0>;
		cci-device = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK1_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor@4 {
		cell-index = <4>;
		compatible = "qcom,cam-sensor";
		reg = <0x4>;
		csiphy-sd-index = <0>;
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		led-flash-src = <&led_flash_triple_rear>;
		actuator-src = <&actuator_triple_rear>;
		eeprom-src = <&eeprom_triple_rear>;
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L4P>;
		cam_vdig-supply = <&L2P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		cam_v_custom1-supply = <&S2A>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_v_custom1";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2904000 1104000 0 2096000>;
		rgltr-max-voltage = <1800000 2904000 1104000 0 2096000>;
		rgltr-load-current = <0 80000 105000 0 80000>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk0_active
				&cam_sensor_active_rear>;
		pinctrl-1 = <&cam_sensor_mclk0_suspend
				&cam_sensor_suspend_rear>;
		gpios = <&tlmm 29 0>,
			<&tlmm 34 0>,
			<&tlmm 50 0>;
		gpio-reset = <1>;
		gpio-vana = <2>;
		gpio-req-tbl-num = <0 1 2>;
		gpio-req-tbl-flags = <1 0 0>;
		gpio-req-tbl-label = "CAMIF_MCLK4",
					"CAM_RESET4",
					"CAM_VANA4";
		sensor-mode = <0>;
		cci-device = <0>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK0_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor@5 {
		cell-index = <5>;
		compatible = "qcom,cam-sensor";
		reg = <0x5>;
		csiphy-sd-index = <1>;
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		led-flash-src = <&led_flash_triple_rear_aux>;
		actuator-src = <&actuator_triple_rear_aux>;
		eeprom-src = <&eeprom_triple_rear_aux>;
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L3P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1056000 0>;
		rgltr-max-voltage = <1800000 2800000 1056000 0>;
		rgltr-load-current = <0 2000000 105000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk1_active
				&cam_sensor_active_rear_aux>;
		pinctrl-1 = <&cam_sensor_mclk1_suspend
				&cam_sensor_suspend_rear_aux>;
		gpios = <&tlmm 30 0>,
			<&tlmm 35 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK5",
					"CAM_RESET5";
		sensor-mode = <0>;
		cci-device = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK1_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};
};

&cam_cci1 {
	actuator_triple_rear_aux2: qcom,actuator@6 {
		cell-index = <6>;
		reg = <0x6>;
		compatible = "qcom,actuator";
		cci-device = <1>;
		cci-master = <0>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <2800000>;
		rgltr-max-voltage = <2800000>;
		rgltr-load-current = <100000>;
		status = "ok";
	};

	eeprom_front: qcom,eeprom@2 {
		cell-index = <2>;
		reg = <0x2>;
		compatible = "qcom,eeprom";
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L3P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		rgltr-min-voltage = <1800000 2800000 1056000 0>;
		rgltr-max-voltage = <1800000 2800000 1056000 0>;
		rgltr-load-current = <0 80000 105000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk3_active
				 &cam_sensor_active_front>;
		pinctrl-1 = <&cam_sensor_mclk3_suspend
				 &cam_sensor_suspend_front>;
		gpios = <&tlmm 32 0>,
			<&tlmm 37 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK3",
					"CAM_RESET3";
		sensor-position = <1>;
		sensor-mode = <0>;
		cci-device = <1>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK3_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	eeprom_triple_rear_aux2: qcom,eeprom@6 {
		cell-index = <6>;
		reg = <6>;
		compatible = "qcom,eeprom";
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L7P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		cam_vaf-supply = <&L5P>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_vaf";
		rgltr-cntrl-support;
		rgltr-min-voltage = <1800000 2800000 1056000 0 2800000>;
		rgltr-max-voltage = <1800000 2800000 1056000 0 2800000>;
		rgltr-load-current = <0 80000 105000 0 100000>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_active
				&cam_sensor_active_rear_aux2>;
		pinctrl-1 = <&cam_sensor_mclk2_suspend
				&cam_sensor_suspend_rear_aux2>;
		gpios = <&tlmm 31 0>,
			<&tlmm 36 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK2",
					"CAM_RESET2";
		sensor-mode = <0>;
		cci-device = <1>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK2_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor@2 {
		cell-index = <2>;
		compatible = "qcom,cam-sensor";
		reg = <0x02>;
		csiphy-sd-index = <3>;
		sensor-position-roll = <270>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		eeprom-src = <&eeprom_front>;
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L3P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1056000 0>;
		rgltr-max-voltage = <1800000 2800000 1056000 0>;
		rgltr-load-current = <0 80000 105000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk3_active
				 &cam_sensor_active_front>;
		pinctrl-1 = <&cam_sensor_mclk3_suspend
				 &cam_sensor_suspend_front>;
		gpios = <&tlmm 32 0>,
			<&tlmm 37 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK3",
					"CAM_RESET3";
		sensor-mode = <0>;
		cci-device = <1>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK3_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor@6 {
		cell-index = <6>;
		compatible = "qcom,cam-sensor";
		reg = <0x06>;
		csiphy-sd-index = <2>;
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		led-flash-src = <&led_flash_triple_rear_aux2>;
		actuator-src = <&actuator_triple_rear_aux2>;
		eeprom-src = <&eeprom_triple_rear_aux2>;
		cam_vio-supply = <&L6P>;
		cam_vana-supply = <&L7P>;
		cam_vdig-supply = <&L1P>;
		cam_clk-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1056000 0>;
		rgltr-max-voltage = <1800000 2800000 1056000 0>;
		rgltr-load-current = <0 80000 105000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_active
				 &cam_sensor_active_rear_aux2>;
		pinctrl-1 = <&cam_sensor_mclk2_suspend
				 &cam_sensor_suspend_rear_aux2>;
		gpios = <&tlmm 31 0>,
			<&tlmm 36 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK6",
					"CAM_RESET6";
		sensor-mode = <0>;
		cci-device = <1>;
		cci-master = <0>;
		status = "ok";
		clocks = <&camcc CAM_CC_MCLK2_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};
};
+421 −0

File added.

Preview size limit exceeded, changes collapsed.

+331 −2
Original line number Diff line number Diff line
@@ -6,6 +6,332 @@
		status = "ok";
	};

	cam_csiphy0: qcom,csiphy0 {
		cell-index = <0>;
		compatible = "qcom,csiphy-v1.2.3", "qcom,csiphy";
		reg = <0x0ac65000 0x1000>;
		reg-names = "csiphy";
		reg-cam-base = <0x65000>;
		interrupts = <GIC_SPI 477 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "csiphy";
		regulator-names = "gdscr", "refgen", "mipi-csi-vdd1",
			"mipi-csi-vdd2";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		refgen-supply = <&refgen>;
		mipi-csi-vdd1-supply = <&L18A>;
		mipi-csi-vdd2-supply = <&L22A>;
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 0 880000 1200000>;
		rgltr-max-voltage = <0 0 880000 1200000>;
		rgltr-load-current = <0 0 80000 80000>;
		clocks = <&camcc CAM_CC_CPHY_RX_CLK_SRC>,
			<&camcc CAM_CC_CSIPHY0_CLK>,
			<&camcc CAM_CC_CSI0PHYTIMER_CLK_SRC>,
			<&camcc CAM_CC_CSI0PHYTIMER_CLK>;
		clock-names = "cphy_rx_clk_src",
			"csiphy0_clk",
			"csi0phytimer_clk_src",
			"csi0phytimer_clk";
		src-clock-name = "csi0phytimer_clk_src";
		clock-cntl-level = "lowsvs", "svs", "svs_l1";
		clock-rates =
			<300000000 0 300000000 0>,
			<384000000 0 300000000 0>,
			<400000000 0 300000000 0>;
		status = "ok";
	};

	cam_csiphy1: qcom,csiphy1 {
		cell-index = <1>;
		compatible = "qcom,csiphy-v1.2.3", "qcom,csiphy";
		reg = <0xac66000 0x1000>;
		reg-names = "csiphy";
		reg-cam-base = <0x66000>;
		interrupts = <GIC_SPI 478 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "csiphy";
		regulator-names = "gdscr", "refgen", "mipi-csi-vdd1",
			"mipi-csi-vdd2";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		refgen-supply = <&refgen>;
		mipi-csi-vdd1-supply = <&L18A>;
		mipi-csi-vdd2-supply = <&L22A>;
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 0 880000 1200000>;
		rgltr-max-voltage = <0 0 880000 1200000>;
		rgltr-load-current = <0 0 80000 80000>;
		clocks = <&camcc CAM_CC_CPHY_RX_CLK_SRC>,
			<&camcc CAM_CC_CSIPHY1_CLK>,
			<&camcc CAM_CC_CSI1PHYTIMER_CLK_SRC>,
			<&camcc CAM_CC_CSI1PHYTIMER_CLK>;
		clock-names = "cphy_rx_clk_src",
			"csiphy1_clk",
			"csi1phytimer_clk_src",
			"csi1phytimer_clk";
		src-clock-name = "csi1phytimer_clk_src";
		clock-cntl-level = "lowsvs", "svs", "svs_l1";
		clock-rates =
			<300000000 0 300000000 0>,
			<384000000 0 300000000 0>,
			<400000000 0 300000000 0>;
		status = "ok";
	};

	cam_csiphy2: qcom,csiphy2 {
		cell-index = <2>;
		compatible = "qcom,csiphy-v1.2.3", "qcom,csiphy";
		reg = <0xac67000 0x1000>;
		reg-names = "csiphy";
		reg-cam-base = <0x67000>;
		interrupts = <GIC_SPI 479 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "csiphy";
		regulator-names = "gdscr", "refgen", "mipi-csi-vdd1",
			"mipi-csi-vdd2";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		refgen-supply = <&refgen>;
		mipi-csi-vdd1-supply = <&L18A>;
		mipi-csi-vdd2-supply = <&L22A>;
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 0 880000 1200000>;
		rgltr-max-voltage = <0 0 880000 1200000>;
		rgltr-load-current = <0 0 80000 80000>;
		clocks = <&camcc CAM_CC_CPHY_RX_CLK_SRC>,
			<&camcc CAM_CC_CSIPHY2_CLK>,
			<&camcc CAM_CC_CSI2PHYTIMER_CLK_SRC>,
			<&camcc CAM_CC_CSI2PHYTIMER_CLK>;
		clock-names = "cphy_rx_clk_src",
			"csiphy2_clk",
			"csi2phytimer_clk_src",
			"csi2phytimer_clk";
		src-clock-name = "csi2phytimer_clk_src";
		clock-cntl-level = "lowsvs", "svs", "svs_l1";
		clock-rates =
			<300000000 0 300000000 0>,
			<384000000 0 300000000 0>,
			<400000000 0 300000000 0>;
		status = "ok";
	};

	cam_csiphy3: qcom,csiphy3 {
		cell-index = <3>;
		compatible = "qcom,csiphy-v1.2.3", "qcom,csiphy";
		reg = <0xac68000 0x1000>;
		reg-names = "csiphy";
		reg-cam-base = <0x68000>;
		interrupts = <GIC_SPI 461 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "csiphy";
		regulator-names = "gdscr", "refgen", "mipi-csi-vdd1",
			"mipi-csi-vdd2";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		refgen-supply = <&refgen>;
		mipi-csi-vdd1-supply = <&L18A>;
		mipi-csi-vdd2-supply = <&L22A>;
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 0 880000 1200000>;
		rgltr-max-voltage = <0 0 880000 1200000>;
		rgltr-load-current = <0 0 80000 80000>;
		clocks = <&camcc CAM_CC_CPHY_RX_CLK_SRC>,
			<&camcc CAM_CC_CSIPHY3_CLK>,
			<&camcc CAM_CC_CSI3PHYTIMER_CLK_SRC>,
			<&camcc CAM_CC_CSI3PHYTIMER_CLK>;
		clock-names = "cphy_rx_clk_src",
			"csiphy3_clk",
			"csi3phytimer_clk_src",
			"csi3phytimer_clk";
		src-clock-name = "csi3phytimer_clk_src";
		clock-cntl-level = "lowsvs", "svs", "svs_l1";
		clock-rates =
			<300000000 0 300000000 0>,
			<384000000 0 300000000 0>,
			<400000000 0 300000000 0>;
		status = "ok";
	};

	cam_cci0: qcom,cci0 {
		cell-index = <0>;
		compatible = "qcom,cci";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0xac4a000 0x1000>;
		reg-names = "cci";
		reg-cam-base = <0x4a000>;
		interrupt-names = "cci";
		interrupts = <GIC_SPI 468 IRQ_TYPE_EDGE_RISING>;
		status = "ok";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "gdscr";
		clocks = <&camcc CAM_CC_CCI_0_CLK>,
			<&camcc CAM_CC_CCI_0_CLK_SRC>;
		clock-names = "cci_0_clk",
			"cci_0_clk_src";
		src-clock-name = "cci_0_clk_src";
		clock-cntl-level = "lowsvs";
		clock-rates = <0 37500000>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cci0_active &cci1_active>;
		pinctrl-1 = <&cci0_suspend &cci1_suspend>;
		gpios = <&tlmm 39 0>,
			<&tlmm 40 0>,
			<&tlmm 41 0>,
			<&tlmm 42 0>;
		gpio-req-tbl-num = <0 1 2 3>;
		gpio-req-tbl-flags = <1 1 1 1>;
		gpio-req-tbl-label = "CCI_I2C_DATA0",
			"CCI_I2C_CLK0",
			"CCI_I2C_DATA1",
			"CCI_I2C_CLK1";

		i2c_freq_100Khz_cci0: qcom,i2c_standard_mode {
			hw-thigh = <201>;
			hw-tlow = <174>;
			hw-tsu-sto = <204>;
			hw-tsu-sta = <231>;
			hw-thd-dat = <22>;
			hw-thd-sta = <162>;
			hw-tbuf = <227>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_400Khz_cci0: qcom,i2c_fast_mode {
			hw-thigh = <38>;
			hw-tlow = <56>;
			hw-tsu-sto = <40>;
			hw-tsu-sta = <40>;
			hw-thd-dat = <22>;
			hw-thd-sta = <35>;
			hw-tbuf = <62>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_custom_cci0: qcom,i2c_custom_mode {
			hw-thigh = <38>;
			hw-tlow = <56>;
			hw-tsu-sto = <40>;
			hw-tsu-sta = <40>;
			hw-thd-dat = <22>;
			hw-thd-sta = <35>;
			hw-tbuf = <62>;
			hw-scl-stretch-en = <1>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_1Mhz_cci0: qcom,i2c_fast_plus_mode {
			hw-thigh = <16>;
			hw-tlow = <22>;
			hw-tsu-sto = <17>;
			hw-tsu-sta = <18>;
			hw-thd-dat = <16>;
			hw-thd-sta = <15>;
			hw-tbuf = <24>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <3>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};
	};

	cam_cci1: qcom,cci1 {
		cell-index = <1>;
		compatible = "qcom,cci";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0xac4b000 0x1000>;
		reg-names = "cci";
		reg-cam-base = <0x4b000>;
		interrupt-names = "cci";
		interrupts = <GIC_SPI 462 IRQ_TYPE_EDGE_RISING>;
		status = "ok";
		gdscr-supply = <&cam_cc_titan_top_gdsc>;
		regulator-names = "gdscr";
		clocks = <&camcc CAM_CC_CCI_1_CLK>,
			<&camcc CAM_CC_CCI_1_CLK_SRC>;
		clock-names = "cci_clk",
			"cci_1_clk_src";
		src-clock-name = "cci_1_clk_src";
		clock-cntl-level = "lowsvs";
		clock-rates = <0 37500000>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cci2_active>;
		pinctrl-1 = <&cci2_suspend>;
		gpios = <&tlmm 43 0>,
			<&tlmm 44 0>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 1>;
		gpio-req-tbl-label = "CCI_I2C_DATA2",
			"CCI_I2C_CLK2";

		i2c_freq_100Khz_cci1: qcom,i2c_standard_mode {
			hw-thigh = <201>;
			hw-tlow = <174>;
			hw-tsu-sto = <204>;
			hw-tsu-sta = <231>;
			hw-thd-dat = <22>;
			hw-thd-sta = <162>;
			hw-tbuf = <227>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_400Khz_cci1: qcom,i2c_fast_mode {
			hw-thigh = <38>;
			hw-tlow = <56>;
			hw-tsu-sto = <40>;
			hw-tsu-sta = <40>;
			hw-thd-dat = <22>;
			hw-thd-sta = <35>;
			hw-tbuf = <62>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_custom_cci1: qcom,i2c_custom_mode {
			hw-thigh = <38>;
			hw-tlow = <56>;
			hw-tsu-sto = <40>;
			hw-tsu-sta = <40>;
			hw-thd-dat = <22>;
			hw-thd-sta = <35>;
			hw-tbuf = <62>;
			hw-scl-stretch-en = <1>;
			hw-trdhld = <6>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};

		i2c_freq_1Mhz_cci1: qcom,i2c_fast_plus_mode {
			hw-thigh = <16>;
			hw-tlow = <22>;
			hw-tsu-sto = <17>;
			hw-tsu-sta = <18>;
			hw-thd-dat = <16>;
			hw-thd-sta = <15>;
			hw-tbuf = <24>;
			hw-scl-stretch-en = <0>;
			hw-trdhld = <3>;
			hw-tsp = <3>;
			cci-clk-src = <37500000>;
			status = "ok";
		};
	};

	qcom,cam_smmu {
		compatible = "qcom,msm-cam-smmu";
		status = "ok";
@@ -81,6 +407,8 @@
		msm_cam_smmu_icp {
			compatible = "qcom,msm-cam-smmu-cb";
			iommus = <&apps_smmu 0xCA2 0x0>,
				<&apps_smmu 0xC40 0x20>,
				<&apps_smmu 0xC60 0x20>,
				<&apps_smmu 0xCC0 0x20>,
				<&apps_smmu 0xCE0 0x20>;
			label = "icp";
@@ -177,6 +505,7 @@
		reg = <0xac48000 0x1000>;
		reg-names = "cpas-cdm";
		reg-cam-base = <0x48000>;
		cam_hw_fuse = <CAM_CPAS_SECURE_CAMERA_ENABLE 0x007801f0 23>;
		interrupts = <GIC_SPI 469 IRQ_TYPE_EDGE_RISING>;
		interrupt-names = "cpas-cdm";
		regulator-names = "camss";
@@ -746,8 +1075,8 @@
			"turbo", "turbo";
		client-id-based;
		client-names =
			"csiphy0", "csiphy1", "csiphy2", "cci0",
			"csid0", "csid1", "csid2", "csid3",
			"csiphy0", "csiphy1", "csiphy2",  "csiphy3", "cci0",
			"cci1", "csid0", "csid1", "csid2", "csid3",
			"ife0", "ife1", "ife2", "ife3", "ipe0",
			"cam-cdm-intf0", "cpas-cdm0", "bps0",
			"icp0", "jpeg-dma0", "jpeg-enc0", "lrmecpas0";