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

Commit 664044c1 authored by Cullum Baldwin's avatar Cullum Baldwin Committed by Gerrit - the friendly Code Review server
Browse files

ARM: dts: msm: Enable eye-tracking cam LED torch mode for Kona XR

Add interface for gpio flash support in device tree,
and add logic codes to require gpios info. And pull up
the related gpios when open flash and pull down them when
close flash.

CRs-Fixed: 2622427
Change-Id: I26af9a0c6d936504e78469181cd29ed39876921e
parent 1f99f5ed
Loading
Loading
Loading
Loading
+27 −7
Original line number Diff line number Diff line
#include <dt-bindings/clock/qcom,camcc-kona.h>

&soc {
	led_flash_rear: qcom,camera-flash0 {
	led_flash_rear: qcom,camera-flash@0 {
		cell-index = <0>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
		torch-source = <&pm8150l_torch0 &pm8150l_torch1>;
		switch-source = <&pm8150l_switch2>;
		status = "ok";
		status = "disabled";
	};

	led_flash_rear_aux: qcom,camera-flash1 {
	led_flash_rear_aux: qcom,camera-flash@1 {
		cell-index = <1>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
		torch-source = <&pm8150l_torch0 &pm8150l_torch1>;
		switch-source = <&pm8150l_switch2>;
		status = "disabled";
	};

	led_flash_eye_track: qcom,camera-flash@2 {
		cell-index = <2>;
		compatible = "qcom,camera-flash";
		gpios = <&tlmm 22 0>,
				<&tlmm 23 0>,
				<&tlmm 24 0>;
		gpio-req-tbl-num = <0 1 2>;
		gpio-req-tbl-flags = <0 0 0>;
		gpio-req-tbl-label = "TCKING_LED_1V2_EN",
							"TCKING_LED_3V3_EN",
							"TCKING_LED_EN";
		gpio-req-tbl-delay = <20 20 20>;
		status = "ok";
	};

@@ -25,7 +40,7 @@
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
		torch-source = <&pm8150l_torch0 &pm8150l_torch1>;
		switch-source = <&pm8150l_switch2>;
		status = "ok";
		status = "disabled";
	};

	led_flash_triple_rear_aux: qcom,camera-flash@5 {
@@ -34,7 +49,7 @@
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
		torch-source = <&pm8150l_torch0 &pm8150l_torch1>;
		switch-source = <&pm8150l_switch2>;
		status = "ok";
		status = "disabled";
	};

	led_flash_triple_rear_aux2: qcom,camera-flash@6 {
@@ -43,7 +58,7 @@
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
		torch-source = <&pm8150l_torch0 &pm8150l_torch1>;
		switch-source = <&pm8150l_switch2>;
		status = "ok";
		status = "disabled";
	};

	qcom,cam-res-mgr {
@@ -266,6 +281,7 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	/* RGB Left (Master) */
	qcom,cam-sensor2 {
		cell-index = <2>;
@@ -317,6 +333,7 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	/* RGB Right (Slave) */
	qcom,cam-sensor3 {
		cell-index = <3>;
@@ -367,6 +384,7 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	/* 6DOF Left (Slave) */
	qcom,cam-sensor4 {
		cell-index = <4>;
@@ -417,6 +435,7 @@
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	/* 6DOF Right (Master) */
	qcom,cam-sensor5 {
		cell-index = <5>;
@@ -649,6 +668,7 @@
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		led-flash-src = <&led_flash_eye_track>;
		cam_vio-supply = <&pm8009_l7>;
		cam_bob-supply = <&pm8150a_bob>;
		cam_vana-supply = <&pm8009_l6>;
+23 −8
Original line number Diff line number Diff line
#include <dt-bindings/clock/qcom,camcc-kona.h>

&soc {
	led_flash_rear: qcom,camera-flash0 {
	led_flash_rear: qcom,camera-flash@0 {
		cell-index = <0>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
@@ -10,7 +10,7 @@
		status = "disabled";
	};

	led_flash_rear_aux: qcom,camera-flash1 {
	led_flash_rear_aux: qcom,camera-flash@1 {
		cell-index = <1>;
		compatible = "qcom,camera-flash";
		flash-source = <&pm8150l_flash0 &pm8150l_flash1>;
@@ -19,6 +19,21 @@
		status = "disabled";
	};

	led_flash_eye_track: qcom,camera-flash@2 {
		cell-index = <2>;
		compatible = "qcom,camera-flash";
		gpios = <&tlmm 22 0>,
				<&tlmm 23 0>,
				<&tlmm 24 0>;
		gpio-req-tbl-num = <0 1 2>;
		gpio-req-tbl-flags = <0 0 0>;
		gpio-req-tbl-label = "TCKING_LED_1V2_EN",
							"TCKING_LED_3V3_EN",
							"TCKING_LED_EN";
		gpio-req-tbl-delay = <20 20 20>;
		status = "ok";
	};

	led_flash_triple_rear: qcom,camera-flash@4 {
		cell-index = <4>;
		compatible = "qcom,camera-flash";
@@ -59,7 +74,6 @@
				&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
@@ -422,7 +436,7 @@
		clock-rates = <24000000>;
	};

	/* 6DOF Left (Master) */
	/* 6DOF Right (Master) */
	qcom,cam-sensor5 {
		cell-index = <1>;
		compatible = "qcom,cam-sensor";
@@ -596,7 +610,7 @@
		clock-rates = <24000000>;
	};

	/* ET LEFT (Master) */
	/* ET Left (Master): Combo Mode */
	qcom,cam-sensor0 {
		cell-index = <4>;
		compatible = "qcom,cam-sensor";
@@ -644,7 +658,7 @@
		clock-rates = <24000000>;
	};

	/* ET RIGHT (Slave) Combo mode */
	/* ET Right (Slave): Combo Mode */
	qcom,cam-sensor1 {
		cell-index = <5>;
		compatible = "qcom,cam-sensor";
@@ -652,10 +666,11 @@
		sensor-position-roll = <90>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		cam_bob-supply = <&pm8150a_bob>;
		cam_vdig-supply = <&pm8009_l2>;
		led-flash-src = <&led_flash_eye_track>;
		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";