arm64: dts: ti: k3-am62-verdin: Add Toradex Capacitive Touch Display 10.1" DSI

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 <vitor.soares@toradex.com>
Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Link: https://patch.msgid.link/20260522161105.277519-18-ivitro@gmail.com
Signed-off-by: Nishanth Menon <nm@ti.com>
This commit is contained in:
Vitor Soares 2026-05-22 17:11:09 +01:00 committed by Nishanth Menon
parent 38d01a245e
commit 8e76e1539c
2 changed files with 141 additions and 0 deletions

View File

@ -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

View File

@ -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 <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/pwm/pwm.h>
&{/} {
backlight_pwm3: backlight-pwm3 {
compatible = "pwm-backlight";
brightness-levels = <0 45 63 88 119 158 203 255>;
default-brightness-level = <4>;
power-supply = <&reg_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>;
};
};