Commit bb59462e authored by Stephen Boyd's avatar Stephen Boyd Committed by Bjorn Andersson
Browse files

arm64: dts: qcom: sc7180: Add board regulators for MIPI camera trogdor boards



Some trogdor boards have on-board regulators for the MIPI camera
components. Add nodes describing these regulators so boards with these
supplies can consume them.

Cc: Douglas Anderson <dianders@chromium.org>
Cc: Matthias Kaehlcke <mka@chromium.org>
Signed-off-by: default avatarStephen Boyd <swboyd@chromium.org>
Reviewed-by: default avatarDouglas Anderson <dianders@chromium.org>
Reviewed-by: default avatarMatthias Kaehlcke <mka@chromium.org>
Signed-off-by: default avatarBjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20211216044529.733652-1-swboyd@chromium.org
parent 1b968998
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -142,6 +142,22 @@ skin-temp-thermistor@1 {
	};
};

&pp1800_uf_cam {
	status = "okay";
};

&pp1800_wf_cam {
	status = "okay";
};

&pp2800_uf_cam {
	status = "okay";
};

&pp2800_wf_cam {
	status = "okay";
};

&pp3300_dx_edp {
	gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
};
+16 −0
Original line number Diff line number Diff line
@@ -146,6 +146,22 @@ skin-temp-thermistor@1 {
	};
};

&pp1800_uf_cam {
	status = "okay";
};

&pp1800_wf_cam {
	status = "okay";
};

&pp2800_uf_cam {
	status = "okay";
};

&pp2800_wf_cam {
	status = "okay";
};

&pp3300_dx_edp {
	gpio = <&tlmm 67 GPIO_ACTIVE_HIGH>;
};
+122 −0
Original line number Diff line number Diff line
@@ -144,6 +144,100 @@ pp3300_a: pp3300-a-regulator {
		vin-supply = <&ppvar_sys>;
	};

	pp1800_ec:
	pp1800_sensors:
	pp1800_ldo: pp1800-ldo-regulator {
		compatible = "regulator-fixed";
		regulator-name = "pp1800_ldo";

		/* EC turns on with hibernate_l; always on for AP */
		regulator-always-on;
		regulator-boot-on;
		regulator-min-microvolt = <1800000>;
		regulator-max-microvolt = <1800000>;

		/*
		 * Actually should be pp1800_h1 but we don't have any need to
		 * model that so we use the parent of pp1800_h1.
		 */
		vin-supply = <&pp3300_a>;
	};

	pp1800_uf_cam: pp1800-uf-cam-regulator {
		compatible = "regulator-fixed";
		regulator-name = "pp1800_uf_cam";
		status = "disabled";

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

		gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>;
		enable-active-high;
		pinctrl-names = "default";
		pinctrl-0 = <&uf_cam_en>;

		vin-supply = <&pp1800_ldo>;
		regulator-enable-ramp-delay = <1000>;
	};

	pp1800_wf_cam: pp1800-wf-cam-regulator {
		compatible = "regulator-fixed";
		regulator-name = "pp1800_wf_cam";
		status = "disabled";

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

		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
		enable-active-high;
		pinctrl-names = "default";
		pinctrl-0 = <&wf_cam_en>;

		vin-supply = <&pp1800_ldo>;
		regulator-enable-ramp-delay = <1000>;
	};

	pp2800_uf_cam: pp2800-uf-cam-regulator {
		compatible = "regulator-fixed";
		regulator-name = "pp2800_uf_cam";
		status = "disabled";

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

		gpio = <&tlmm 6 GPIO_ACTIVE_HIGH>;
		enable-active-high;
		/*
		 * The pinconf can only be referenced once so we put it on the
		 * first regulator and comment it out here.
		 * pinctrl-names = "default";
		 * pinctrl-0 = <&uf_cam_en>;
		 */

		vin-supply = <&pp3300_a>;
	};

	pp2800_vcm_wf_cam:
	pp2800_wf_cam: pp2800-wf-cam-regulator {
		compatible = "regulator-fixed";
		regulator-name = "pp2800_wf_cam";
		status = "disabled";

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

		gpio = <&tlmm 7 GPIO_ACTIVE_HIGH>;
		enable-active-high;
		/*
		 * The pinconf can only be referenced once so we put it on the
		 * first regulator and comment it out here.
		 * pinctrl-names = "default";
		 * pinctrl-0 = <&wf_cam_en>;
		 */

		vin-supply = <&pp3300_a>;
	};

	pp3300_audio:
	pp3300_codec: pp3300-codec-regulator {
		compatible = "regulator-fixed";
@@ -1521,4 +1615,32 @@ pinconf-sd-cd {
			drive-strength = <2>;
		};
	};

	uf_cam_en: uf-cam-en {
		pinmux {
			pins = "gpio6";
			function = "gpio";
		};

		pinconf {
			pins = "gpio6";
			drive-strength = <2>;
			/* External pull down */
			bias-disable;
		};
	};

	wf_cam_en: wf-cam-en {
		pinmux {
			pins = "gpio7";
			function = "gpio";
		};

		pinconf {
			pins = "gpio7";
			drive-strength = <2>;
			/* External pull down */
			bias-disable;
		};
	};
};