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

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

Merge e2564c3e on remote branch

Change-Id: I6cc7577d8b883ab4cad3f4c9fdb6aa53bba8b5fb
parents 3fc98263 e2564c3e
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -272,6 +272,8 @@
		reg = <0x5c11000 0x1000>,
			<0x5c13000 0x4000>;
		reg-cam-base = <0x11000 0x13000>;
		cam_hw_fuse = <CAM_CPAS_ISP_FUSE_ID   0x01B401D0 5 CAM_CPAS_FEATURE_TYPE_DISABLE  2>,
			<CAM_CPAS_ISP_PIX_FUSE_ID 0x01B401D0 6 CAM_CPAS_FEATURE_TYPE_DISABLE  2>;
		interrupt-names = "cpas_camnoc";
		interrupts = <GIC_SPI 159 IRQ_TYPE_EDGE_RISING>;
		camnoc-axi-min-ib-bw = <3000000000>;  /*Need to be verified*/
+8 −5
Original line number Diff line number Diff line
@@ -67,9 +67,12 @@ First Level Node - CAM CPAS device

- cam_hw_fuse
  Usage: optional
  Value type: <u32>
  Definition: List of fuse based features and respective
	fuse info.
  Value type: <u32:fuse_id> <u32:address> <u32:fuse_bit> <u32:fuse_type> <u32:hw_id>
   fuse_id: fuse id for each features
   address: fuse register io address
   fuse_bit: fuse bit number in the fuse registers
   fuse_type: fuse feature is enable type or disable type
   hw_id: Hw id of the feature

- interrupt-names
  Usage: optional
@@ -299,8 +302,8 @@ Example:
		reg = <0xac40000 0x1000>,
			<0xac42000 0x5000>;
		reg-cam-base = <0x40000 0x42000>;
		cam_hw_fuse = <CAM_CPAS_QCFA_BINNING_ENABLE 0x00780210 29>,
			<CAM_CPAS_SECURE_CAMERA_ENABLE 0x00780210 18>;
		cam_hw_fuse = <CAM_CPAS_QCFA_BINNING_ENABLE 0x00780210 29  CAM_CPAS_FEATURE_TYPE_ENABLE 0>,
			<CAM_CPAS_SECURE_CAMERA_ENABLE 0x00780210 18 CAM_CPAS_FEATURE_TYPE_ENABLE 0>;
		interrupt-names = "cpas_camnoc";
		interrupts = <0 459 0>;
		qcom,cpas-hw-ver = <0x170100>; /* Titan v170 v1.0.0 */
+127 −26
Original line number Diff line number Diff line
@@ -5,6 +5,38 @@
	};
};

&tlmm {
	cam_sensor_active_gmsl: cam_sensor_active_gmsl {
		/* RESET */
		mux {
			pins = "gpio99";
			function = "gpio";
		};

		config {
			pins = "gpio99";
			bias-pull-up;
			drive-strength = <2>; /* 2 MA */
			output-high;
		};
	};

	cam_sensor_suspend_gmsl: cam_sensor_suspend_gmsl {
		/* RESET */
		mux {
			pins = "gpio99";
			function = "gpio";
		};

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

&cam_cci0 {
	qcom,cam-sensor0 {
		cell-index = <0>;
@@ -14,17 +46,13 @@
		sensor-position-pitch = <0>;
		sensor-position-yaw = <180>;
		cam_vio-supply = <&pm8009_l7>;
		//cam_bob-supply = <&pm8150a_bob>;
		//cam_vana-supply = <&pm8009_l5>;
		//cam_vdig-supply = <&pm8009_l1>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_bob";
		regulator-names = "cam_vio", "cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1104000 0 3008000>;
		rgltr-max-voltage = <1800000 3000000 1104000 0 3960000>;
		rgltr-load-current = <120000 80000 1200000 0 2000000>;
		rgltr-min-voltage = <1800000 0>;
		rgltr-max-voltage = <1800000 0>;
		rgltr-load-current = <120000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk0_active
@@ -54,18 +82,14 @@
		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_vana-supply = <&pm8009_l6>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_bob";
		regulator-names = "cam_vio", "cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1200000 0 3008000>;
		rgltr-max-voltage = <1800000 3000000 1200000 0 3960000>;
		rgltr-load-current = <120000 80000 1200000 0 2000000>;
		rgltr-min-voltage = <1800000 0>;
		rgltr-max-voltage = <1800000 0>;
		rgltr-load-current = <120000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk1_active
@@ -89,7 +113,7 @@
	};

	qcom,cam-sensor3 {
		cell-index = <4>;
		cell-index = <3>;
		compatible = "qcom,cam-sensor";
		csiphy-sd-index = <0>;
		sensor-position-roll = <90>;
@@ -129,6 +153,15 @@
		clock-rates = <24000000>;
	};

	qcom,cam-sensor4 {
		cell-index = <4>;
		status = "disable";
	};

	qcom,cam-sensor5 {
		cell-index = <5>;
		status = "disable";
	};
};

&cam_cci1 {
@@ -140,17 +173,13 @@
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		cam_vio-supply = <&pm8009_l7>;
		//cam_bob-supply = <&pm8150a_bob>;
		//cam_vana-supply = <&pm8009_l6>;
		//cam_vdig-supply = <&pm8009_l3>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_vana", "cam_vdig",
			"cam_clk", "cam_bob";
		regulator-names = "cam_vio", "cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 2800000 1056000 0 3008000>;
		rgltr-max-voltage = <1800000 3000000 1056000 0 3960000>;
		rgltr-load-current = <120000 80000 1200000 0 2000000>;
		rgltr-min-voltage = <1800000 0>;
		rgltr-max-voltage = <1800000 0>;
		rgltr-load-current = <120000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_active
@@ -173,5 +202,77 @@
		clock-rates = <24000000>;
	};

	qcom,cam-sensor4 {
		cell-index = <4>;
		compatible = "qcom,cam-sensor";
		csiphy-sd-index = <4>;
		sensor-position-roll = <270>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		cam_vio-supply = <&pm8009_l7>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 0>;
		rgltr-max-voltage = <1800000 0>;
		rgltr-load-current = <120000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_active
				 &cam_sensor_active_gmsl>;
		pinctrl-1 = <&cam_sensor_mclk2_suspend
				 &cam_sensor_suspend_gmsl>;
		gpios = <&tlmm 94 0>,
			<&tlmm 99 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK2",
					"CAM_RESET4";
		sensor-mode = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};

	qcom,cam-sensor5 {
		cell-index = <5>;
		compatible = "qcom,cam-sensor";
		csiphy-sd-index = <4>;
		sensor-position-roll = <270>;
		sensor-position-pitch = <0>;
		sensor-position-yaw = <0>;
		cam_vio-supply = <&pm8009_l7>;
		cam_clk-supply = <&titan_top_gdsc>;
		regulator-names = "cam_vio", "cam_clk";
		rgltr-cntrl-support;
		pwm-switch;
		rgltr-min-voltage = <1800000 0>;
		rgltr-max-voltage = <1800000 0>;
		rgltr-load-current = <120000 0>;
		gpio-no-mux = <0>;
		pinctrl-names = "cam_default", "cam_suspend";
		pinctrl-0 = <&cam_sensor_mclk2_active
				 &cam_sensor_active_gmsl>;
		pinctrl-1 = <&cam_sensor_mclk2_suspend
				 &cam_sensor_suspend_gmsl>;
		gpios = <&tlmm 94 0>,
			<&tlmm 99 0>;
		gpio-reset = <1>;
		gpio-req-tbl-num = <0 1>;
		gpio-req-tbl-flags = <1 0>;
		gpio-req-tbl-label = "CAMIF_MCLK2",
					"CAM_RESET4";
		sensor-mode = <0>;
		cci-master = <1>;
		status = "ok";
		clocks = <&clock_camcc CAM_CC_MCLK2_CLK>;
		clock-names = "cam_clk";
		clock-cntl-level = "turbo";
		clock-rates = <24000000>;
	};
};
+1 −0
Original line number Diff line number Diff line
@@ -768,6 +768,7 @@
			<240000000 0 580000000 0>;
		clock-cntl-level = "svs", "svs_l1", "nominal", "turbo";
		src-clock-name = "ope_clk_src";
		clock-control-debugfs = "true";
		qcom,cam-cx-ipeak = <&cx_ipeak_lm 8>;
		status = "ok";
	};