On 11.01.2023 14:31, Johan Hovold wrote: > Enable the eDP display on MDSS0 DP3, including backlight control. > > Signed-off-by: Johan Hovold <johan+linaro@xxxxxxxxxx> > --- Reviewed-by: Konrad Dybcio <konrad.dybcio@xxxxxxxxxx> Konrad > > This one depends on the sc8280xp display patches: > > https://lore.kernel.org/lkml/20230111035906.2975494-1-quic_bjorande@xxxxxxxxxxx/T/#mbcdfc826df6683a71d80bab5d86645ba81b02d52 > > Johan > > > .../qcom/sc8280xp-lenovo-thinkpad-x13s.dts | 75 ++++++++++++++++++- > 1 file changed, 73 insertions(+), 2 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > index 23c1ca44ec11..ef17ef90d1f0 100644 > --- a/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > +++ b/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts > @@ -47,7 +47,7 @@ wcd938x: audio-codec { > #sound-dai-cells = <1>; > }; > > - backlight { > + backlight: backlight { > compatible = "pwm-backlight"; > pwms = <&pmc8280c_lpg 3 1000000>; > enable-gpios = <&pmc8280_1_gpios 8 GPIO_ACTIVE_HIGH>; > @@ -72,6 +72,22 @@ switch-lid { > }; > }; > > + 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"; > > @@ -259,7 +275,6 @@ vreg_l6b: ldo6 { > regulator-max-microvolt = <880000>; > regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; > regulator-boot-on; > - regulator-always-on; /* FIXME: VDD_A_EDP_0_0P9 */ > }; > }; > > @@ -340,6 +355,55 @@ vreg_l9d: ldo9 { > }; > }; > > +&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>; > @@ -902,6 +966,13 @@ hastings_reg_en: hastings-reg-en-state { > &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";