On 2025-02-02 23:45:51, Luca Weiss wrote: > Configure the MDSS nodes for the phone and add the panel node. > > Signed-off-by: Luca Weiss <luca.weiss@xxxxxxxxxxxxx> Glad to hear (and see in real life) that you're able to use the 1:1:1 topology patches. Reviewed-by: Marijn Suijten <marijn.suijten@xxxxxxxxxxxxxx> Thanks! > --- > arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts | 94 ++++++++++++++++++++-- > 1 file changed, 89 insertions(+), 5 deletions(-) > > diff --git a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts > index 389eca9b9e68187980e92ac921a77a3c3b54f6a5..965e32473a58ae4748e4cb748980fad1d2b06ab6 100644 > --- a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts > +++ b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts > @@ -138,6 +138,34 @@ vreg_ois_dvdd_1p1: regulator-ois-dvdd-1p1 { > vin-supply = <&vreg_s8b>; > }; > > + vreg_oled_dvdd: regulator-oled-dvdd { > + compatible = "regulator-fixed"; > + regulator-name = "oled_dvdd"; > + regulator-min-microvolt = <1200000>; > + regulator-max-microvolt = <1200000>; > + > + gpio = <&tlmm 51 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + > + vin-supply = <&vreg_s1b>; > + > + regulator-boot-on; > + }; > + > + vreg_oled_vci: regulator-oled-vci { > + compatible = "regulator-fixed"; > + regulator-name = "oled_vci"; > + regulator-min-microvolt = <3000000>; > + regulator-max-microvolt = <3000000>; > + > + gpio = <&pm8350c_gpios 7 GPIO_ACTIVE_HIGH>; > + enable-active-high; > + > + vin-supply = <&vreg_l13c>; > + > + regulator-boot-on; > + }; > + > reserved-memory { > cont_splash_mem: cont-splash@e1000000 { > reg = <0x0 0xe1000000 0x0 0x2300000>; > @@ -597,11 +625,6 @@ eeprom@51 { > }; > }; > > -&dispcc { > - /* Disable for now so simple-framebuffer continues working */ > - status = "disabled"; > -}; > - > &gcc { > protected-clocks = <GCC_CFG_NOC_LPASS_CLK>, > <GCC_EDP_CLKREF_EN>, > @@ -733,6 +756,46 @@ &ipa { > status = "okay"; > }; > > +&mdss { > + status = "okay"; > +}; > + > +&mdss_dsi { > + vdda-supply = <&vreg_l6b>; > + status = "okay"; > + > + panel@0 { > + compatible = "fairphone,fp5-rm692e5-boe", "raydium,rm692e5"; > + reg = <0>; > + > + reset-gpios = <&tlmm 44 GPIO_ACTIVE_LOW>; > + > + vci-supply = <&vreg_oled_vci>; > + vddio-supply = <&vreg_l12c>; > + dvdd-supply = <&vreg_oled_dvdd>; > + > + pinctrl-0 = <&disp_reset_n_active>, <&mdp_vsync>; > + pinctrl-1 = <&disp_reset_n_suspend>, <&mdp_vsync>; > + pinctrl-names = "default", "sleep"; > + > + port { > + panel_in: endpoint { > + remote-endpoint = <&mdss_dsi0_out>; > + }; > + }; > + }; > +}; > + > +&mdss_dsi0_out { > + data-lanes = <0 1 2 3>; > + remote-endpoint = <&panel_in>; > +}; > + > +&mdss_dsi_phy { > + vdds-supply = <&vreg_l10c>; > + status = "okay"; > +}; > + > &pm7250b_adc { > pinctrl-0 = <&pm7250b_adc_default>; > pinctrl-names = "default"; > @@ -1026,6 +1089,20 @@ bluetooth_enable_default: bluetooth-enable-default-state { > bias-disable; > }; > > + disp_reset_n_active: disp-reset-n-active-state { > + pins = "gpio44"; > + function = "gpio"; > + drive-strength = <8>; > + bias-disable; > + }; > + > + disp_reset_n_suspend: disp-reset-n-suspend-state { > + pins = "gpio44"; > + function = "gpio"; > + drive-strength = <2>; > + bias-pull-down; > + }; > + > hall_sensor_default: hall-sensor-default-state { > pins = "gpio155"; > function = "gpio"; > @@ -1033,6 +1110,13 @@ hall_sensor_default: hall-sensor-default-state { > bias-pull-up; > }; > > + mdp_vsync: mdp-vsync-state { > + pins = "gpio80"; > + function = "mdp_vsync"; > + drive-strength = <2>; > + bias-pull-down; > + }; > + > pm8008_int_default: pm8008-int-default-state { > pins = "gpio25"; > function = "gpio"; > > -- > 2.48.1 >