Re: [PATCH v4 9/9] arm64: dts: qcom: Add display support for QCS615 RIDE board

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2024/12/13 18:19, Dmitry Baryshkov wrote:
On Fri, 13 Dec 2024 at 11:21, fange zhang <quic_fangez@xxxxxxxxxxx> wrote:



On 2024/12/10 19:02, Dmitry Baryshkov wrote:
On Tue, Dec 10, 2024 at 02:54:00PM +0800, Fange Zhang wrote:
From: Li Liu <quic_lliu6@xxxxxxxxxxx>

Add display MDSS and DSI configuration for QCS615 RIDE board.
QCS615 has a DP port, and DP support will be added in a later patch.

Signed-off-by: Li Liu <quic_lliu6@xxxxxxxxxxx>
Signed-off-by: Fange Zhang <quic_fangez@xxxxxxxxxxx>
---
   arch/arm64/boot/dts/qcom/qcs615-ride.dts | 89 ++++++++++++++++++++++++++++++++
   1 file changed, 89 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs615-ride.dts b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
index a25928933e2b66241258e418c6e5bc36c306101e..694719a09ac46bfa2fe34f1883c0970b9d0902be 100644
--- a/arch/arm64/boot/dts/qcom/qcs615-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs615-ride.dts
@@ -32,6 +32,18 @@ xo_board_clk: xo-board-clk {
                      #clock-cells = <0>;
              };
      };
+
+    dp-connector {
+            compatible = "dp-connector";
+            label = "DP";
+            type = "mini";
+
+            port {
+                    dp_connector_out: endpoint {
+                            remote-endpoint = <&anx_7625_out>;
+                    };
+            };
+    };
   };

   &apps_rsc {
@@ -202,6 +214,83 @@ &gcc {
               <&sleep_clk>;
   };

+&i2c2 {
+    clock-frequency = <400000>;
+    status = "okay";
+
+    ioexp: gpio@3e {
+            compatible = "semtech,sx1509q";
+            reg = <0x3e>;
+            interrupt-parent = <&tlmm>;
+            interrupts = <58 0>;

Use IRQ flags instead of just 0 (here and further on). Also it might be
better to use interrupts-extended instead.
Got it, will use interrupts-extended instead
-               interrupt-parent = <&tlmm>;
-               interrupts = <58 0>;
+               interrupts-extended = <&tlmm 58 IRQ_TYPE_NONE>;

+            gpio-controller;
+            #gpio-cells = <2>;
+            interrupt-controller;
+            #interrupt-cells = <2>;
+            semtech,probe-reset;
+    };
+
+    i2c-mux@77 {
+            compatible = "nxp,pca9542";
+            reg = <0x77>;
+            #address-cells = <1>;
+            #size-cells = <0>;

Add empty line before device nodes (here and furher on).
Sorry, will add it in next patch.

+            i2c@0 {
+                    reg = <0>;
+                    #address-cells = <1>;
+                    #size-cells = <0>;
+
+                    anx7625@58 {
+                            compatible = "analogix,anx7625";
+                            reg = <0x58>;
+                            interrupt-parent = <&ioexp>;
+                            interrupts = <0 0>;
will change it to interrupts-extended in next patch
-               interrupt-parent = <&ioexp>;
-               interrupts = <0 0>;
+               interrupts-extended = <&ioexp 0 IRQ_TYPE_NONE>;

Yes, much better. BTW: are you sure that it's really IRQ_TYPE_NONE?
We extensively tested FALLING and BOTH type, and they all work. However, I believe it’s better to use the default type, which is the same as the downstream approach. This way, it will be more stable.

+                            enable-gpios = <&tlmm 4 GPIO_ACTIVE_HIGH>;
+                            reset-gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
+                            wakeup-source;
+
+                            ports {
+                                    #address-cells = <1>;
+                                    #size-cells = <0>;
+
+                                    port@0 {
+                                            reg = <0>;
+                                            anx_7625_in: endpoint {
+                                                    remote-endpoint = <&mdss_dsi0_out>;
+                                            };
+                                    };
+
+                                    port@1 {
+                                            reg = <1>;
+                                            anx_7625_out: endpoint {
+                                                    remote-endpoint = <&dp_connector_out>;
+                                            };
+                                    };
+                            };
+                    };
+            };
+    };
+};
+
+&mdss {
+    status = "okay";
+};
+
+&mdss_dsi0 {
+    vdda-supply = <&vreg_l11a>;
+    status = "okay";
+};
+
+&mdss_dsi0_out {
+    remote-endpoint = <&anx_7625_in>;
+    data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+    vdds-supply = <&vreg_l5a>;
+    status = "okay";
+};
+
   &qupv3_id_0 {
      status = "okay";
   };

--
2.34.1










[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux