Commit a0e6fbf2 authored by Stephan Gerhold's avatar Stephan Gerhold Committed by Bjorn Andersson
Browse files

arm64: dts: qcom: x1e80100-crd: Fix backlight



The backlight does not work correctly with the current display panel
configuration: It works after boot, but once the display gets disabled it
is not possible to get it back on. It turns out that the ATNA45AF01 panel
needs exactly the same non-standard power sequence as implemented by the
panel-samsung-atna33xc20 driver for sc7180-trogdor-homestar.

Switch the panel in the DT to the new compatible and make two more changes
to make it work correctly:

 1. Add the missing GPIO for the panel EL_ON3 line (EDP_BL_EN on CRD and
    enable-gpios in the DT).
 2. Drop the regulator-always-on for the panel regulator. The panel does
    not seem to power off properly if the regulator stays on.

Fixes: d7e03cce ("arm64: dts: qcom: x1e80100-crd: Enable more support")
Reviewed-by: default avatarKonrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: default avatarStephan Gerhold <stephan.gerhold@linaro.org>
Reviewed-by: default avatarJohan Hovold <johan+linaro@kernel.org>
Tested-by: default avatarJohan Hovold <johan+linaro@kernel.org>
Link: https://lore.kernel.org/r/20240715-x1e80100-crd-backlight-v2-3-31b7f2f658a3@linaro.org


Signed-off-by: default avatarBjorn Andersson <andersson@kernel.org>
parent 86c71c0e
Loading
Loading
Loading
Loading
+15 −2
Original line number Diff line number Diff line
@@ -268,7 +268,6 @@ vreg_edp_3p3: regulator-edp-3p3 {
		pinctrl-0 = <&edp_reg_en>;
		pinctrl-names = "default";

		regulator-always-on;
		regulator-boot-on;
	};

@@ -724,9 +723,13 @@ &mdss_dp3 {

	aux-bus {
		panel {
			compatible = "edp-panel";
			compatible = "samsung,atna45af01", "samsung,atna33xc20";
			enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>;
			power-supply = <&vreg_edp_3p3>;

			pinctrl-0 = <&edp_bl_en>;
			pinctrl-names = "default";

			port {
				edp_panel_in: endpoint {
					remote-endpoint = <&mdss_dp3_out>;
@@ -791,6 +794,16 @@ &pcie6a_phy {
	status = "okay";
};

&pmc8380_3_gpios {
	edp_bl_en: edp-bl-en-state {
		pins = "gpio4";
		function = "normal";
		power-source = <1>; /* 1.8V */
		input-disable;
		output-enable;
	};
};

&qupv3_0 {
	status = "okay";
};