[PATCH 1/6] arm64: dts: qcom: talos-lyra-evk: Add LT9611UXD HDMI bridge support

From: anand . tiwari

Date: Wed Oct 21 2026 - 11:28:02 EST


From: Mohit Dsor <mohit.dsor@xxxxxxxxxxxxxxxx>

Add support for the Lontium LT9611UXD DSI-to-HDMI bridge, enabled by
default on the Talos Lyra EVK base board DT, to provide HDMI output
on the DSI0_B2B connector on the carrier card.

LT9611UXD is connected through I2C2, with reset and interrupt
connected to TLMM GPIO61 and GPIO60 respectively.

Signed-off-by: Mohit Dsor <mohit.dsor@xxxxxxxxxxxxxxxx>
Signed-off-by: Anand Tiwari <anand.tiwari@xxxxxxxxxxxxxxxx>
---
arch/arm64/boot/dts/qcom/talos-lyra-evk.dts | 105 ++++++++++++++++++++++++++++
1 file changed, 105 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts b/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
index cfb563658fe0..ec5c10a40521 100644
--- a/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
+++ b/arch/arm64/boot/dts/qcom/talos-lyra-evk.dts
@@ -4,6 +4,8 @@
*/
/dts-v1/;

+#include <dt-bindings/gpio/gpio.h>
+#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
#include "talos-lyra-evk-som.dtsi"

/ {
@@ -11,6 +13,10 @@ / {
compatible = "qcom,talos-lyra-evk", "qcom,qcs615", "qcom,sm6150";
chassis-type = "embedded";

+ aliases {
+ i2c2 = &i2c2;
+ };
+
dp0-connector {
compatible = "dp-connector";
label = "DP0";
@@ -25,6 +31,65 @@ dp0_connector_in: endpoint {
};
};

+ hdmi_connector: hdmi-connector {
+ compatible = "hdmi-connector";
+ type = "a";
+
+ port {
+ hdmi_connector_out: endpoint {
+ remote-endpoint = <&hdmi_bridge_out>;
+ };
+ };
+ };
+
+ vreg_disp_3p3: regulator-disp-3p3 {
+ compatible = "regulator-fixed";
+ regulator-name = "vreg_disp_3p3";
+ regulator-min-microvolt = <3300000>;
+ regulator-max-microvolt = <3300000>;
+ gpio = <&tlmm 3 GPIO_ACTIVE_HIGH>;
+ enable-active-high;
+ pinctrl-0 = <&lcd_bias_en>;
+ pinctrl-names = "default";
+ };
+
+};
+
+&i2c2 {
+ status = "okay";
+
+ hdmi_bridge: hdmi-bridge@41 {
+ compatible = "lontium,lt9611uxd";
+ reg = <0x41>;
+ interrupts-extended = <&tlmm 60 IRQ_TYPE_EDGE_FALLING>;
+ reset-gpios = <&tlmm 61 GPIO_ACTIVE_LOW>;
+ vcc-supply = <&vreg_disp_3p3>;
+ vdd-supply = <&vreg_s4a>;
+
+ pinctrl-0 = <&bridge_irq_pin &bridge_rst_pin>;
+ pinctrl-names = "default";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ hdmi_bridge_in: endpoint {
+ remote-endpoint = <&mdss_dsi0_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ hdmi_bridge_out: endpoint {
+ remote-endpoint = <&hdmi_connector_out>;
+ };
+ };
+ };
+ };
};

&i2c5 {
@@ -74,6 +139,23 @@ &mdss_dp0_out {
remote-endpoint = <&dp0_connector_in>;
};

+&mdss_dsi0 {
+ vdda-supply = <&vreg_l5a>;
+
+ status = "okay";
+};
+
+&mdss_dsi0_out {
+ remote-endpoint = <&hdmi_bridge_in>;
+ data-lanes = <0 1 2 3>;
+};
+
+&mdss_dsi0_phy {
+ vdds-supply = <&vreg_l11a>;
+
+ status = "okay";
+};
+
&pon_pwrkey {
status = "okay";
};
@@ -135,3 +217,26 @@ &usb_qmpphy_2 {

status = "okay";
};
+
+&tlmm {
+ lcd_bias_en: lcd-bias-en-state {
+ pins = "gpio3";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+
+ bridge_irq_pin: bridge-irq-state {
+ pins = "gpio60";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ bridge_rst_pin: bridge-rst-state {
+ pins = "gpio61";
+ function = "gpio";
+ drive-strength = <8>;
+ bias-disable;
+ };
+};

--
2.55.0