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

Commit 9e21491c authored by Jigarkumar Zala's avatar Jigarkumar Zala Committed by Gerrit - the friendly Code Review server
Browse files

ARM: dts: msm: add support for iris camera for SDM845 target



Add pinctrl, clock information for iris camera on SDM845 target.

Change-Id: I544fb9ba0014888d65ddeefb2c40e9410aa6038a
Signed-off-by: default avatarJigarkumar Zala <jzala@codeaurora.org>
parent b389aa0b
Loading
Loading
Loading
Loading
+43 −0
Original line number Diff line number Diff line
@@ -376,4 +376,47 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor@3 {
		cell-index = <3>;
		compatible = "qcom,cam-sensor";
		reg = <0x03>;
		csiphy-sd-index = <3>;
		sensor-position-roll = <270>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		cam_vio-supply = <&pm8998_lvs1>;
		cam_vana-supply = <&pmi8998_bob>;
		cam_vdig-supply = <&camera_ldo>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 3312000 1050000 0>;
		rgltr-max-voltage = <0 3600000 1050000 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_iris_active>;
		pinctrl-1 = <&cam_sensor_mclk3_suspend
				 &cam_sensor_iris_suspend>;
		gpios = <&tlmm 16 0>,
			<&tlmm 9 0>,
			<&tlmm 8 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_MCLK3",
					"CAM_RESET3",
					"CAM_VANA1";
		sensor-mode = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&clock_camcc CAM_CC_MCLK3_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};
};
+43 −0
Original line number Diff line number Diff line
@@ -376,4 +376,47 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};
	qcom,cam-sensor@3 {
		cell-index = <3>;
		compatible = "qcom,cam-sensor";
		reg = <0x03>;
		csiphy-sd-index = <3>;
		sensor-position-roll = <270>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		cam_vio-supply = <&pm8998_lvs1>;
		cam_vana-supply = <&pmi8998_bob>;
		cam_vdig-supply = <&camera_ldo>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk";
		rgltr-cntrl-support;
		rgltr-min-voltage = <0 3312000 1050000 0>;
		rgltr-max-voltage = <0 3600000 1050000 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_iris_active>;
		pinctrl-1 = <&cam_sensor_mclk3_suspend
				 &cam_sensor_iris_suspend>;
		gpios = <&tlmm 16 0>,
			<&tlmm 9 0>,
			<&tlmm 8 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_MCLK3",
					"CAM_RESET3",
					"CAM_VANA1";
		sensor-mode = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&clock_camcc CAM_CC_MCLK3_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

};
+6 −0
Original line number Diff line number Diff line
@@ -194,6 +194,12 @@
		/delete-property/ cam_vio-supply;
		/delete-property/ cam_vana-supply;
	};

	qcom,cam-sensor@3 {
		/delete-property/ cam_vio-supply;
		/delete-property/ cam_vana-supply;
	};

};

&clock_gcc {
+59 −0
Original line number Diff line number Diff line
@@ -2826,6 +2826,35 @@
			};
		};

		cam_sensor_mclk3_active: cam_sensor_mclk3_active {
			/* MCLK3 */
			mux {
				pins = "gpio16";
				function = "cam_mclk";
			};

			config {
				pins = "gpio16";
				bias-disable; /* No PULL */
				drive-strength = <2>; /* 2 MA */
			};
		};

		cam_sensor_mclk3_suspend: cam_sensor_mclk3_suspend {
			/* MCLK3 */
			mux {
				pins = "gpio16";
				function = "cam_mclk";
			};

			config {
				pins = "gpio16";
				bias-pull-down; /* PULL DOWN */
				drive-strength = <2>; /* 2 MA */
			};
		};


		cam_sensor_front_active: cam_sensor_front_active {
			/* RESET  AVDD_LDO*/
			mux {
@@ -2855,6 +2884,36 @@
			};
		};

		cam_sensor_iris_active: cam_sensor_iris_active {
			/* RESET  AVDD_LDO*/
			mux {
				pins = "gpio9", "gpio8";
				function = "gpio";
			};

			config {
				pins = "gpio9", "gpio8";
				bias-disable; /* No PULL */
				drive-strength = <2>; /* 2 MA */
			};
		};

		cam_sensor_iris_suspend: cam_sensor_iris_suspend {
			/* RESET */
			mux {
				pins = "gpio9";
				function = "gpio";
			};

			config {
				pins = "gpio9";
				bias-disable; /* No PULL */
				drive-strength = <2>; /* 2 MA */
				output-low;
			};
		};


		cam_sensor_mclk2_active: cam_sensor_mclk2_active {
			/* MCLK1 */
			mux {
+8 −12
Original line number Diff line number Diff line
@@ -24,8 +24,7 @@
		gdscr-supply = <&titan_top_gdsc>;
		refgen-supply = <&refgen>;
		csi-vdd-voltage = <1200000>;
		mipi-csi-vdd-supply = <&pm8998_l26>;
		mipi-dsi-vdd-supply = <&pm8998_l1>;
		mipi-csi-vdd-supply = <&pm8998_l1>;
		clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
			<&clock_camcc CAM_CC_SOC_AHB_CLK>,
			<&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
@@ -60,8 +59,7 @@
		gdscr-supply = <&titan_top_gdsc>;
		refgen-supply = <&refgen>;
		csi-vdd-voltage = <1200000>;
		mipi-csi-vdd-supply = <&pm8998_l26>;
		mipi-dsi-vdd-supply = <&pm8998_l1>;
		mipi-csi-vdd-supply = <&pm8998_l1>;
		clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
			<&clock_camcc CAM_CC_SOC_AHB_CLK>,
			<&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
@@ -97,8 +95,7 @@
		gdscr-supply = <&titan_top_gdsc>;
		refgen-supply = <&refgen>;
		csi-vdd-voltage = <1200000>;
		mipi-csi-vdd-supply = <&pm8998_l26>;
		mipi-dsi-vdd-supply = <&pm8998_l1>;
		mipi-csi-vdd-supply = <&pm8998_l1>;
		clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
			<&clock_camcc CAM_CC_SOC_AHB_CLK>,
			<&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
@@ -124,7 +121,7 @@
	cam_csiphy3: qcom,csiphy@ac68000 {
		cell-index = <3>;
		compatible = "qcom,csiphy-v1.0", "qcom,csiphy";
		reg = <0xac67000 0x1000>;
		reg = <0xac68000 0x1000>;
		reg-names = "csiphy";
		reg-cam-base = <0x68000>;
		interrupts = <0 448 0>;
@@ -133,8 +130,7 @@
		gdscr-supply = <&titan_top_gdsc>;
		refgen-supply = <&refgen>;
		csi-vdd-voltage = <1200000>;
		mipi-csi-vdd-supply = <&pm8998_l26>;
		mipi-dsi-vdd-supply = <&pm8998_l1>;
		mipi-csi-vdd-supply = <&pm8998_l1>;
		clocks = <&clock_camcc CAM_CC_CAMNOC_AXI_CLK>,
			<&clock_camcc CAM_CC_SOC_AHB_CLK>,
			<&clock_camcc CAM_CC_SLOW_AHB_CLK_SRC>,
@@ -319,14 +315,14 @@
			"turbo", "turbo";
		client-id-based;
		client-names =
			"csiphy0", "csiphy1", "csiphy2", "cci0",
			"csiphy0", "csiphy1", "csiphy2", "csiphy3", "cci0",
			"csid0", "csid1", "csid2",
			"ife0", "ife1", "ife2", "ipe0",
			"ipe1", "cam-cdm-intf0", "cpas-cdm0", "bps0",
			"icp0", "jpeg-dma0", "jpeg-enc0", "fd0";
		client-axi-port-names =
			"cam_hf_1", "cam_hf_2", "cam_hf_2", "cam_sf_1",
			"cam_hf_1", "cam_hf_2", "cam_hf_2",
			"cam_hf_1", "cam_hf_2", "cam_hf_2", "cam_hf_2",
			"cam_sf_1", "cam_hf_1", "cam_hf_2", "cam_hf_2",
			"cam_hf_1", "cam_hf_2", "cam_hf_2", "cam_sf_1",
			"cam_sf_1", "cam_sf_1", "cam_sf_1", "cam_sf_1",
			"cam_sf_1", "cam_sf_1", "cam_sf_1", "cam_sf_1";
Loading