From a8102021ac455eac4e0ceca0277696d55726c774 Mon Sep 17 00:00:00 2001 From: kun_liu Date: Thu, 16 Apr 2026 11:10:38 +0800 Subject: [PATCH 1/3] drm/panel: add TDO DSI V1 panel driver panel-tdo-dsi-v1.c as module to driver tdo panel. Signed-off-by: kun_liu --- drivers/gpu/drm/panel/Kconfig | 14 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-tdo-dsi-v1.c | 487 +++++++++++++++++++++++ 3 files changed, 502 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-tdo-dsi-v1.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index edaaf7eb2f0948..7dafffe00f24b5 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -1087,6 +1087,20 @@ config DRM_PANEL_TPO_Y17P Say Y if you want to enable support for panels based on the TDO Y17P controller. +config DRM_PANEL_TDO_DSI_V1 + tristate "TDO touchscreen panels V1" + depends on DRM_MIPI_DSI + depends on I2C + depends on BACKLIGHT_CLASS_DEVICE + help + Say Y here if you want to enable support for TDO DSI + touchscreen panels, e.g. tl034wvs03, tl040hds31, etc. + This driver provides MIPI DSI display interface. + It also handles backlight control via the backlight + class device. + To compile this driver as a module, choose M here; the + module will be called panel-tdo-dsi-v1. + config DRM_PANEL_TPO_TD028TTEC1 tristate "Toppoly (TPO) TD028TTEC1 panel driver" depends on OF && SPI diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 19871edb64366a..75f6bf2729a602 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -108,6 +108,7 @@ obj-$(CONFIG_DRM_PANEL_SONY_TULIP_TRULY_NT35521) += panel-sony-tulip-truly-nt355 obj-$(CONFIG_DRM_PANEL_STARTEK_KD070FHFID015) += panel-startek-kd070fhfid015.o obj-$(CONFIG_DRM_PANEL_TDO_TL070WSH30) += panel-tdo-tl070wsh30.o obj-$(CONFIG_DRM_PANEL_TPO_Y17P) += panel-tdo-y17p.o +obj-$(CONFIG_DRM_PANEL_TDO_DSI_V1) += panel-tdo-dsi-v1.o obj-$(CONFIG_DRM_PANEL_TPO_TD028TTEC1) += panel-tpo-td028ttec1.o obj-$(CONFIG_DRM_PANEL_TPO_TD043MTEA1) += panel-tpo-td043mtea1.o obj-$(CONFIG_DRM_PANEL_TPO_TPG110) += panel-tpo-tpg110.o diff --git a/drivers/gpu/drm/panel/panel-tdo-dsi-v1.c b/drivers/gpu/drm/panel/panel-tdo-dsi-v1.c new file mode 100644 index 00000000000000..ffba274c5dd9c6 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-tdo-dsi-v1.c @@ -0,0 +1,487 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2026 TDO International Limited + * + * Based on panel-raspberrypi-touchscreen by Broadcom + */ + + +#include +#include +#include +#include +#include + +#include