arm64: dts: qcom: sc8280xp-crd: Enable EDP
authorBjorn Andersson <bjorn.andersson@linaro.org>
Wed, 11 Jan 2023 03:59:04 +0000 (19:59 -0800)
committerBjorn Andersson <andersson@kernel.org>
Wed, 11 Jan 2023 19:09:23 +0000 (13:09 -0600)
The SC8280XP CRD has a EDP display on MDSS0 DP3, enable relevant nodes
and link it together with the backlight control.

Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Signed-off-by: Bjorn Andersson <quic_bjorande@quicinc.com>
Reviewed-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/20230111035906.2975494-3-quic_bjorande@quicinc.com
arch/arm64/boot/dts/qcom/sc8280xp-crd.dts

index 551768f9772973c878c9b49deb3a23050497bfe7..b29c02307839d3f0326cabcb06037cc52be46312 100644 (file)
@@ -20,7 +20,7 @@
                serial0 = &qup2_uart17;
        };
 
-       backlight {
+       backlight: backlight {
                compatible = "pwm-backlight";
                pwms = <&pmc8280c_lpg 3 1000000>;
                enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>;
                stdout-path = "serial0:115200n8";
        };
 
+       vreg_edp_3p3: regulator-edp-3p3 {
+               compatible = "regulator-fixed";
+
+               regulator-name = "VREG_EDP_3P3";
+               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";
 
        };
 };
 
+&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";
+                       power-supply = <&vreg_edp_3p3>;
+
+                       backlight = <&backlight>;
+
+                       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 = <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;
+       };
+
        kybd_default: kybd-default-state {
                disable-pins {
                        pins = "gpio102";