On 22.03.2023 18:15, Jianhua Lu wrote: > xiaomi-elish uses dual dsi mode panel and dsi phy type is cphy. > > Signed-off-by: Jianhua Lu <lujianhua000@xxxxxxxxx> > --- > Changes in v2: > - Include missing <dt-bindings/phy/phy.h> for phy-type property. > > .../dts/qcom/sm8250-xiaomi-elish-common.dtsi | 73 +++++++++++++++++++ > 1 file changed, 73 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi b/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi > index a43d4b73ffca..4ff8454d4abe 100644 > --- a/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi > @@ -5,6 +5,7 @@ > > #include <dt-bindings/arm/qcom,ids.h> > #include <dt-bindings/regulator/qcom,rpmh-regulator.h> > +#include <dt-bindings/phy/phy.h> 'p' < 'r' > #include "sm8250.dtsi" > #include "pm8150.dtsi" > #include "pm8150b.dtsi" > @@ -469,6 +470,74 @@ &cdsp { > status = "okay"; > }; > > +&dsi0 { > + vdda-supply = <&vreg_l9a_1p2>; > + qcom,dual-dsi-mode; > + qcom,master-dsi; Keep the master property after qcom,sync-dual-dsi so that we get a nice reverse-Christmas-tree. > + qcom,sync-dual-dsi; > + status = "okay"; > + > + display_panel: panel@0 { > + reg = <0>; > + vddio-supply = <&vreg_l14a_1p88>; > + reset-gpios = <&tlmm 75 GPIO_ACTIVE_LOW>; > + backlight = <&backlight>; > + > + status = "disabled"; > + > + ports { > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + reg = <0>; Please add newlines before subnodes. Konrad > + panel_in_0: endpoint { > + remote-endpoint = <&dsi0_out>; > + }; > + }; > + > + port@1{ > + reg = <1>; > + panel_in_1: endpoint { > + remote-endpoint = <&dsi1_out>; > + }; > + }; > + > + }; > + }; > +}; > + > +&dsi0_out { > + data-lanes = <0 1 2>; > + remote-endpoint = <&panel_in_0>; > +}; > + > +&dsi0_phy { > + vdds-supply = <&vreg_l5a_0p88>; > + phy-type = <PHY_TYPE_CPHY>; > + status = "okay"; > +}; > + > +&dsi1 { > + vdda-supply = <&vreg_l9a_1p2>; > + qcom,dual-dsi-mode; > + qcom,sync-dual-dsi; > + /* DSI1 is slave, so use DSI0 clocks */ > + assigned-clock-parents = <&dsi0_phy 0>, <&dsi0_phy 1>; > + status = "okay"; > +}; > + > +&dsi1_out { > + data-lanes = <0 1 2>; > + remote-endpoint = <&panel_in_1>; > +}; > + > +&dsi1_phy { > + vdds-supply = <&vreg_l5a_0p88>; > + phy-type = <PHY_TYPE_CPHY>; > + status = "okay"; > +}; > + > &gmu { > status = "okay"; > }; > @@ -533,6 +602,10 @@ fuel-gauge@55 { > }; > }; > > +&mdss { > + status = "okay"; > +}; > + > &pcie0 { > status = "okay"; > };