Commit 542b3424 authored by Danila Tikhonov's avatar Danila Tikhonov Committed by Bjorn Andersson
Browse files

arm64: dts: qcom: sm7325-nothing-spacewar: Add CAM fixed-regulators



Two regulators (GPIO 72 & 107) for the IMX766 sensor are missing here.
Without a driver, it's unclear if they're extra supplies or pwdn/power
GPIOs (labeled "custom" in the downstream kernel).

So add only those fixed regulators that are currently predictable for
camera sensors, camera EEPROMs and camera actuators.

Signed-off-by: default avatarDanila Tikhonov <danila@jiaxyga.com>
Link: https://lore.kernel.org/r/20250203111429.22062-2-danila@jiaxyga.com


Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 30235bb8
Loading
Loading
Loading
Loading
+125 −0
Original line number Diff line number Diff line
@@ -253,6 +253,124 @@ vph_pwr: vph-pwr-regulator {
		regulator-max-microvolt = <3700000>;
	};

	vreg_cam_vio_1p8: regulator-cam-vio {
		compatible = "regulator-fixed";
		regulator-name = "vreg_cam_vio_1p8";

		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		gpio = <&tlmm 49 GPIO_ACTIVE_HIGH>;
		enable-active-high;
		/* Always-on prevents CCI bus timeouts */
		regulator-always-on;

		vin-supply = <&vreg_bob>;
	};

	vreg_camf_vana_2p8: regulator-camf-vana {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camf_vana_2p8";

		regulator-min-microvolt = <2800000>;
		regulator-max-microvolt = <2800000>;

		gpio = <&tlmm 43 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_bob>;
	};

	vreg_camf_vdig_1p1: regulator-camf-vdig {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camf_vdig_1p1";

		regulator-min-microvolt = <1100000>;
		regulator-max-microvolt = <1100000>;

		gpio = <&tlmm 35 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_s8b_1p256>;
	};

	vreg_camu_vaf_1p8: regulator-camu-vaf {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camu_vaf_1p8";

		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		gpio = <&tlmm 71 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_bob>;
	};

	vreg_camu_vana_2p8: regulator-camu-vana {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camu_vana_2p8";

		regulator-min-microvolt = <2800000>;
		regulator-max-microvolt = <2800000>;
		gpio = <&tlmm 68 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_bob>;
	};

	vreg_camu_vdig_1p1: regulator-camu-vdig {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camu_vdig_1p1";

		regulator-min-microvolt = <1100000>;
		regulator-max-microvolt = <1100000>;

		gpio = <&tlmm 50 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_s8b_1p256>;
	};

	vreg_camw_vaf_1p8: regulator-camw-vaf {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camw_vaf_1p8";

		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		gpio = <&tlmm 96 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_bob>;
	};

	vreg_camw_vana_2p8: regulator-camw-vana {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camw_vana_2p8";

		regulator-min-microvolt = <2800000>;
		regulator-max-microvolt = <2800000>;

		gpio = <&tlmm 79 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_bob>;
	};

	vreg_camw_vdig_1p1: regulator-camw-vdig {
		compatible = "regulator-fixed";
		regulator-name = "vreg_camw_vdig_1p1";

		regulator-min-microvolt = <1100000>;
		regulator-max-microvolt = <1100000>;

		gpio = <&tlmm 108 GPIO_ACTIVE_HIGH>;
		enable-active-high;

		vin-supply = <&vreg_s8b_1p256>;
	};

	// S2B is really ebi.lvl but it's there for supply map completeness sake.
	vreg_s2b_0p7: smpa3-regulator {
		compatible = "regulator-fixed";
@@ -714,6 +832,13 @@ vreg_bob: bob {
};

&cci0 {
	/*
	 * cci0_i2c1 bus is unused and GPIO 71&72 are repurposed.
	 * So set only cci0_i2c0 pinctrl here.
	 */
	pinctrl-0 = <&cci0_default>;
	pinctrl-1 = <&cci0_sleep>;

	status = "okay";
};