[v2,2/4] arm64: dts: qcom: sm8250-xiaomi-elish: Add mdss and dsi node

Message ID 20230322171555.2154-2-lujianhua000@gmail.com
State New
Headers
Series [v2,1/4] arm64: dts: qcom: Move elish dts to common dtsi |

Commit Message

Jianhua Lu March 22, 2023, 5:15 p.m. UTC
  xiaomi-elish uses dual dsi mode panel and dsi phy type is cphy.

Signed-off-by: Jianhua Lu <lujianhua000@gmail.com>
---
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(+)
  

Comments

Konrad Dybcio March 22, 2023, 6:16 p.m. UTC | #1
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@gmail.com>
> ---
> 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";
>  };
  
Jianhua Lu March 23, 2023, 12:22 a.m. UTC | #2
On Wed, Mar 22, 2023 at 07:16:40PM +0100, Konrad Dybcio wrote:
> 
> 
> 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@gmail.com>
> > ---
> > 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'
Acked
> 
> 
> >  #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.
Acked
> 
> > +	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.
Acked
> 
> 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";
> >  };
  

Patch

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>
 #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;
+	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>;
+				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";
 };