Add nodes for BOE NT36523 panel found in xiaomi-elish. This panel is a dual dsi mode panel and the 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. Changes in v3: - Sort include header. - Move qcom,sync-dual-dsi to the front of qcom,master-dsi - Add newline before subnode. .../boot/dts/qcom/sm8250-xiaomi-elish-boe.dts | 5 ++ .../dts/qcom/sm8250-xiaomi-elish-common.dtsi | 75 +++++++++++++++++++ 2 files changed, 80 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-boe.dts b/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-boe.dts index bd9ad109daf9..8b2ae39950ff 100644 --- a/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-boe.dts +++ b/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-boe.dts @@ -11,3 +11,8 @@ / { model = "Xiaomi Mi Pad 5 Pro (BOE)"; compatible = "xiaomi,elish", "qcom,sm8250"; }; + +&display_panel { + compatible = "xiaomi,elish-boe-nt36523"; + status = "okay"; +}; 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..4585f61781f1 100644 --- a/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8250-xiaomi-elish-common.dtsi @@ -4,6 +4,7 @@ */ #include <dt-bindings/arm/qcom,ids.h> +#include <dt-bindings/phy/phy.h> #include <dt-bindings/regulator/qcom,rpmh-regulator.h> #include "sm8250.dtsi" #include "pm8150.dtsi" @@ -469,6 +470,76 @@ &cdsp { status = "okay"; }; +&dsi0 { + vdda-supply = <&vreg_l9a_1p2>; + qcom,dual-dsi-mode; + qcom,sync-dual-dsi; + qcom,master-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>; + + 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 +604,10 @@ fuel-gauge@55 { }; }; +&mdss { + status = "okay"; +}; + &pcie0 { status = "okay"; }; -- 2.39.2