From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 3BBBDCD5BB7 for ; Fri, 22 May 2026 16:12:02 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 304DD10F6B7; Fri, 22 May 2026 16:12:01 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="MAdpB6QZ"; dkim-atps=neutral Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by gabe.freedesktop.org (Postfix) with ESMTPS id D59AB10F5FD for ; Fri, 22 May 2026 16:11:49 +0000 (UTC) Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-48fde648a71so52113285e9.0 for ; Fri, 22 May 2026 09:11:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779466308; x=1780071108; darn=lists.freedesktop.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=m/CkFG5HHyxm29Pd1D4X6TKTxgJBPv7Y7GlCFyBlO2U=; b=MAdpB6QZZmzCvu2wtAdH5bkinvCbct2gCa2ttQBynESXk5yJl64NPL7g1ThJsUgjF6 NUf2QWhYGa5TjmjvWEZ0EighvvS3DO7i2pIV5SUlQIU6NkKbLNUkd8EG/DUyziIyMS6L X/tB9tW66XWdo/ui6lIlrK28KPk9l2z5RVs+teTvnqWY5aQJ9+YTFYcL1fbHWRnNxa2H E2ONOMiqt+UXs1Z1ZVIoUeAVO4QnQ6IgaAOtq2SCU+wGTk/3RaNROzOvSEaY3zsbZoMm fDOkcKB7i058RJGZlldXa0I/s6jBH6IwS80SoH50nMxPALz+J9Ll3gcrA85Q+Kri/3vN bxdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779466308; x=1780071108; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=m/CkFG5HHyxm29Pd1D4X6TKTxgJBPv7Y7GlCFyBlO2U=; b=XB59lrLFiSddrdBHxxBTk5EO3P3o19dpRQ4dJ/2rQal9u6e4At0JprtQ+6QIcVyT6b Mtjxd8c7q77yFppTOqbCyZRp2fPLte252fzHWjuY9ROcSAlAGinPn/okOvOem6bYJ3z3 NLXlXT8Gvx8C2kARDVdBGPEp3j5D6J2JiErH/yF2Z6FwyZUgKKKH5pl7xXBHOqGrYfQp k5ZjiZWQd67ucQ9bS0PZ5NDdGuoVuYNCcGbSBof9ehBhpP9SHh972xqb3mmia74RzzJQ Ida/HQFaSeCwD9nL10xmD8bZCUaXUAYRNOc02uCYKnr16ZbWEGkFpI1efX0SCUavMYsn fzZQ== X-Forwarded-Encrypted: i=1; AFNElJ/YAzPnMsgIuQ33uj+33CyPUAeFeMHAi1FJxgRxs5oUo4+RH4jnZtITPHlQD67G9w6/SutO6fvlUP8=@lists.freedesktop.org X-Gm-Message-State: AOJu0Yxy6zfvKpDfxv6btPR12uLLIFIYyOMPGa/F6lBKixa0rIuKhtd5 Va+Pa7RE6MEI9fJeajHpLr3nxXIIzdBDARnMFwlC8r1WsjtO/IWt1UVi X-Gm-Gg: Acq92OE0W+hNXSdiLOjnS9X1N9pt7S8STcEEMz8F+2DlLnufO+b36KF5aXvLLL3mj/h 3atMac+KdtwoBHp80wFRWV1l11yGffn3+fZIWLwqVuRQ9hd/+i5aQ3ExycAvttoeF8eH2ycsNiF 9Lt3g/um0eUNPK+cJxwYENlnM4k4FYJQ3sdSMt68T0rPwf9a8D1cmeYstPeb82SsgEqZSQnpnLf 5Q/rzaCNSnLn4uh8dJD1M5xCtC9APaKL91eZshX9brDSogjsgfGo5s49A7cWxldcmmsYdDotTSJ 8gp+iEdxaDQ7y9mIdeylt+Q9V7LojzdNKmCrvkx0npUSnt5NvRAq9mbfYyHZPZ+kba1/IBoH8Mq K5RBiaFIas5GLRREA6eSnwJcfqJeUiZjJDKht0dY1vvXYIuMWwPm9s+JKAJQNtcUcmrcuE5CTPP DaULr0v79hSClTRymKuIlbWG6zo2bBEhREZm4a5V3VCw== X-Received: by 2002:a05:600c:3b07:b0:490:f7c:b19 with SMTP id 5b1f17b1804b1-490420f67f5mr50710055e9.0.1779466308126; Fri, 22 May 2026 09:11:48 -0700 (PDT) Received: from vitor-nb (dsl-113-208.bl27.telepac.pt. [176.79.113.208]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-490454a0b9asm51042755e9.11.2026.05.22.09.11.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 May 2026 09:11:47 -0700 (PDT) From: Vitor Soares To: Laurent Pinchart , Neil Armstrong , Jessica Zhang , David Airlie , Simona Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Nishanth Menon , Vignesh Raghavendra , Tero Kristo , Lad Prabhakar , Thierry Reding Cc: Vitor Soares , dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v3 05/11] arm64: dts: ti: k3-am62-verdin: Add Toradex Capacitive Touch Display 10.1" DSI Date: Fri, 22 May 2026 17:11:09 +0100 Message-ID: <20260522161105.277519-18-ivitro@gmail.com> X-Mailer: git-send-email 2.54.0 In-Reply-To: <20260522161105.277519-13-ivitro@gmail.com> References: <20260522161105.277519-13-ivitro@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Vitor Soares Add a device tree overlay for the Toradex Capacitive Touch Display 10.1" on the Verdin DSI_1 interface. The display features an internal Texas Instruments SN65DSI83 DSI-to-LVDS bridge driving a Riverdi RVT101HVLNWC00 10.1" WXGA (1280x800) IPS TFT LCD panel. The touch input is provided by an Ilitek ILI2132 capacitive touch controller. The overlay is also combined with the Verdin AM62 Dahlia carrier board device trees to provide ready-to-use DTBs in both WiFi and non-Wifi SoM variants. Link: https://developer.toradex.com/hardware/accessories/displays/capacitive-touch-display-101inch-dsi Link: https://developer.toradex.com/hardware/accessories/add-ons/dsi-display-adapter/ Assisted-by: Claude:claude-sonnet-4.6 Signed-off-by: Vitor Soares --- Changes in v3: - Rename touch@ nodes to touchscreen@ arch/arm64/boot/dts/ti/Makefile | 9 ++ ...625-verdin-panel-cap-touch-10inch-dsi.dtso | 132 ++++++++++++++++++ 2 files changed, 141 insertions(+) create mode 100644 arch/arm64/boot/dts/ti/k3-am625-verdin-panel-cap-touch-10inch-dsi.dtso diff --git a/arch/arm64/boot/dts/ti/Makefile b/arch/arm64/boot/dts/ti/Makefile index 867c05b675d1..dc397bc693ac 100644 --- a/arch/arm64/boot/dts/ti/Makefile +++ b/arch/arm64/boot/dts/ti/Makefile @@ -11,10 +11,16 @@ # Boards with AM62x SoC k3-am625-verdin-nonwifi-dahlia-dsi-to-hdmi-dtbs := k3-am625-verdin-nonwifi-dahlia.dtb \ k3-am625-verdin-dsi-to-hdmi.dtbo +k3-am625-verdin-nonwifi-dahlia-panel-cap-touch-10inch-dsi-dtbs := \ + k3-am625-verdin-nonwifi-dahlia.dtb \ + k3-am625-verdin-panel-cap-touch-10inch-dsi.dtbo k3-am625-verdin-nonwifi-dev-dsi-to-hdmi-dtbs := k3-am625-verdin-nonwifi-dev.dtb \ k3-am625-verdin-dsi-to-hdmi.dtbo k3-am625-verdin-wifi-dahlia-dsi-to-hdmi-dtbs := k3-am625-verdin-wifi-dahlia.dtb \ k3-am625-verdin-dsi-to-hdmi.dtbo +k3-am625-verdin-wifi-dahlia-panel-cap-touch-10inch-dsi-dtbs := \ + k3-am625-verdin-wifi-dahlia.dtb \ + k3-am625-verdin-panel-cap-touch-10inch-dsi.dtbo k3-am625-verdin-wifi-dev-dsi-to-hdmi-dtbs := k3-am625-verdin-wifi-dev.dtb \ k3-am625-verdin-dsi-to-hdmi.dtbo dtb-$(CONFIG_ARCH_K3) += k3-am625-beagleplay.dtb @@ -26,6 +32,7 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-tqma62xx-mba62xx.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-dsi-to-hdmi.dtbo dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-dsi-to-lvds-panel-cap-touch-10inch.dtbo dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dahlia-dsi-to-hdmi.dtb +dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dahlia-panel-cap-touch-10inch-dsi.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dahlia.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dev-dsi-to-hdmi.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-dev.dtb @@ -33,8 +40,10 @@ dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-ivy.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-mallow.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-yavia.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-nonwifi-zinnia.dtb +dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-panel-cap-touch-10inch-dsi.dtbo dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-panel-cap-touch-10inch-lvds.dtbo dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dahlia-dsi-to-hdmi.dtb +dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dahlia-panel-cap-touch-10inch-dsi.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dahlia.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev-dsi-to-hdmi.dtb dtb-$(CONFIG_ARCH_K3) += k3-am625-verdin-wifi-dev.dtb diff --git a/arch/arm64/boot/dts/ti/k3-am625-verdin-panel-cap-touch-10inch-dsi.dtso b/arch/arm64/boot/dts/ti/k3-am625-verdin-panel-cap-touch-10inch-dsi.dtso new file mode 100644 index 000000000000..ed66feec9462 --- /dev/null +++ b/arch/arm64/boot/dts/ti/k3-am625-verdin-panel-cap-touch-10inch-dsi.dtso @@ -0,0 +1,132 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* + * Copyright (c) Toradex + * + * Toradex Capacitive Touch Display 10.1" on Verdin DSI_1. + * On Dahlia (X17) and Development Board (X48), DSI_1 is exposed via a + * Samtec LSS-130 connector and requires the Toradex DSI Display Adapter + * to convert to FFC/FPC connector. + * + * https://developer.toradex.com/hardware/accessories/displays/capacitive-touch-display-101inch-dsi + * https://www.toradex.com/accessories/capacitive-touch-display-10.1-inch-dsi + * https://developer.toradex.com/hardware/accessories/add-ons/dsi-display-adapter + * https://www.toradex.com/accessories/verdin-dsi-display-adapter + */ + +/dts-v1/; +/plugin/; + +#include +#include +#include + +&{/} { + backlight_pwm3: backlight-pwm3 { + compatible = "pwm-backlight"; + brightness-levels = <0 45 63 88 119 158 203 255>; + default-brightness-level = <4>; + power-supply = <®_3v3>; + /* Verdin PWM_3_DSI (SODIMM 19) - PWM_3_DSI_LVDS */ + pwms = <&epwm1 0 6666667 0>; + }; + + panel-lvds-bridge { + compatible = "riverdi,rvt101hvlnwc00", "panel-lvds"; + backlight = <&backlight_pwm3>; + data-mapping = "vesa-24"; + height-mm = <136>; + width-mm = <217>; + + panel-timing { + clock-frequency = <72400000>; + de-active = <1>; + hactive = <1280>; + hback-porch = <88 88 88>; + hfront-porch = <12 72 132>; + hsync-active = <0>; + hsync-len = <1 5 40>; + pixelclk-active = <1>; + vactive = <800>; + vback-porch = <23 23 23>; + vfront-porch = <1 15 49>; + vsync-active = <0>; + vsync-len = <1 10 20>; + }; + + port { + panel_lvds_bridge_in: endpoint { + remote-endpoint = <&dsi_lvds_bridge_out>; + }; + }; + }; +}; + +&dsi_bridge { + status = "okay"; +}; + +&dsi_bridge_ports { + #address-cells = <1>; + #size-cells = <0>; + + port@1 { + reg = <1>; + + dsi_bridge_out: endpoint { + remote-endpoint = <&dsi_lvds_bridge_in>; + }; + }; +}; + +&dss { + status = "okay"; +}; + +/* Verdin I2C_2_DSI */ +&main_i2c2 { + #address-cells = <1>; + #size-cells = <0>; + + bridge@2c { + compatible = "ti,sn65dsi83"; + reg = <0x2c>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_dsi1_bkl_en>; + /* Verdin GPIO_10_DSI (SODIMM 21) - DSI_1_BKL_EN */ + enable-gpios = <&main_gpio0 30 GPIO_ACTIVE_HIGH>; + + ports { + #address-cells = <1>; + #size-cells = <0>; + + port@0 { + reg = <0>; + + dsi_lvds_bridge_in: endpoint { + remote-endpoint = <&dsi_bridge_out>; + data-lanes = <1 2 3 4>; + }; + }; + + port@2 { + reg = <2>; + + dsi_lvds_bridge_out: endpoint { + remote-endpoint = <&panel_lvds_bridge_in>; + }; + }; + }; + }; + + touchscreen@41 { + compatible = "ilitek,ili2132"; + reg = <0x41>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_dsi1_int>, <&pinctrl_i2s_2_bclk_gpio>; + /* Verdin GPIO_9_DSI (SODIMM 17) - TOUCH_INT# */ + interrupt-parent = <&main_gpio1>; + interrupts = <49 IRQ_TYPE_EDGE_RISING>; + /* Verdin I2S_2_BCLK (SODIMM 42) - TOUCH_RESET# */ + reset-gpios = <&main_gpio0 35 GPIO_ACTIVE_LOW>; + }; +}; -- 2.54.0