]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
arm64: dts: qcom: sm7325-nothing-spacewar: Add CAM fixed-regulators
authorDanila Tikhonov <danila@jiaxyga.com>
Mon, 3 Feb 2025 11:14:26 +0000 (14:14 +0300)
committerBjorn Andersson <andersson@kernel.org>
Wed, 26 Feb 2025 02:57:47 +0000 (20:57 -0600)
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: Danila Tikhonov <danila@jiaxyga.com>
Link: https://lore.kernel.org/r/20250203111429.22062-2-danila@jiaxyga.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
arch/arm64/boot/dts/qcom/sm7325-nothing-spacewar.dts

index a5cda478bd78bf9df28a4c5c14a8597c00368d32..4f964e5d34da9ab77c16b794f1d964ca7b6cadf5 100644 (file)
                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";
 };
 
 &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";
 };