arm64: dts: qcom: sc8280xp-x13s: enable eDP display
authorJohan Hovold <johan+linaro@kernel.org>
Wed, 11 Jan 2023 13:31:28 +0000 (14:31 +0100)
committerBjorn Andersson <andersson@kernel.org>
Wed, 11 Jan 2023 19:10:22 +0000 (13:10 -0600)
Enable the eDP display on MDSS0 DP3, including backlight control.

Signed-off-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
Link: https://lore.kernel.org/r/20230111133128.31813-1-johan+linaro@kernel.org
arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts

index 1a5a5764e6a11011529220db40a5b7ad20e6894d..55ecbee19a58741b9a1a98e32307821240a2974a 100644 (file)
@@ -21,7 +21,7 @@
        model = "Lenovo ThinkPad X13s";
        compatible = "lenovo,thinkpad-x13s", "qcom,sc8280xp";
 
-       backlight {
+       backlight: backlight {
                compatible = "pwm-backlight";
                pwms = <&pmc8280c_lpg 3 1000000>;
                enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
                };
        };
 
+       vreg_edp_3p3: regulator-edp-3p3 {
+               compatible = "regulator-fixed";
+
+               regulator-name = "VCC3LCD";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+
+               gpio = <&tlmm 25 GPIO_ACTIVE_HIGH>;
+               enable-active-high;
+
+               pinctrl-names = "default";
+               pinctrl-0 = <&edp_reg_en>;
+
+               regulator-boot-on;
+       };
+
        vreg_edp_bl: regulator-edp-bl {
                compatible = "regulator-fixed";
 
                        regulator-max-microvolt = <880000>;
                        regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
                        regulator-boot-on;
-                       regulator-always-on;    /* FIXME: VDD_A_EDP_0_0P9 */
                };
        };
 
        };
 };
 
+&dispcc0 {
+       status = "okay";
+};
+
+&mdss0 {
+       status = "okay";
+};
+
+&mdss0_dp3 {
+       compatible = "qcom,sc8280xp-edp";
+
+       data-lanes = <0 1 2 3>;
+
+       status = "okay";
+
+       aux-bus {
+               panel {
+                       compatible = "edp-panel";
+
+                       backlight = <&backlight>;
+                       power-supply = <&vreg_edp_3p3>;
+
+                       ports {
+                               port {
+                                       edp_panel_in: endpoint {
+                                               remote-endpoint = <&mdss0_dp3_out>;
+                                       };
+                               };
+                       };
+               };
+       };
+
+       ports {
+               port@1 {
+                       reg = <1>;
+                       mdss0_dp3_out: endpoint {
+                               remote-endpoint = <&edp_panel_in>;
+                       };
+               };
+       };
+};
+
+&mdss0_dp3_phy {
+       vdda-phy-supply = <&vreg_l6b>;
+       vdda-pll-supply = <&vreg_l3b>;
+
+       status = "okay";
+};
+
 &pcie2a {
        perst-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>;
        wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>;
 &tlmm {
        gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>;
 
+       edp_reg_en: edp-reg-en-state {
+               pins = "gpio25";
+               function = "gpio";
+               drive-strength = <16>;
+               bias-disable;
+       };
+
        hall_int_n_default: hall-int-n-state {
                pins = "gpio107";
                function = "gpio";