From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj2-f9.google.com (mail-pj2-f9.google.com [74.125.227.137]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3373C3C0A12 for ; Sat, 17 Oct 2026 08:36:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=74.125.227.137 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1792226219; cv=none; b=pW5+v/7BgI5ZvHJqbMYkx7acKIVy6VnMhGvDgA1MnIR/oKZcGK+aDdm5FZsP/tu5PqCxDKh2ou2r/06MG7sEqMRa7SQC4U96gKesQCu0uYlbcd7XoxhG/EjOGjjFKGW3O/Gn+obJl822VQoEc9+BVvfh4oF0YLjKb3LIdxMuiaM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1792226219; c=relaxed/simple; bh=gWazb78Til6L4LLeAaKmgCqP4DtebL/Z0QIrUzh+p28=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=nMp+XjqnFbJYaibujrlP4Dj4PNZx5E+CxnnVh4c6gCKtO5kUtIZm79a9QIwGQuhRGg9isiG/4qbm4T/Jh/25qWh0FkjhV7LbK/SI85v+cGbe4/f3Pu7qNfxDgXHncYEe4qydRLC1WK329D7tCfo25NAgyS6iyykqudFZqWCwWS0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=oBFmeGaB; arc=none smtp.client-ip=74.125.227.137 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="oBFmeGaB" Received: by mail-pj2-f9.google.com with SMTP id d9443c01a7336-2e97de4be16so208245ad.0 for ; Sat, 17 Oct 2026 01:36:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1792226217; x=1792831017; darn=vger.kernel.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:content-type; bh=68YJUDl98/bZKRH27CUBjNVC248aPx50zxON2hYp87I=; b=oBFmeGaB086Fc8ODtV7ZkKcLNA7tjUI1HGy0Gp2eA5Q03u8P+1/4VN7qI97Y42PxLR e4RuAnSrRiyOzsBBdfDcN+hJPyWZwO+Va1hvTdzpLon9Un8LActLbdETMOkmzlVjtMM7 snGNQDcxvSvHtH3q2Yi7ervCclXYnq//iHFVDZqWyy+ugaOHHMIWNu6EOfaTyh0D0Idy 29dz620nYNYVdG38cAeMh8m0GiTVPZq6OlZbpQbDV7y4IyuulsbmsQiWmQTX75S0EYsq CcF0TfO1LZtLJ2Qkw0a6tCleOcgD3B+qJxJYoS1AE0AuHx/fr43Q1cg98FemJpuQZR3t iMvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20260707; t=1792226217; x=1792831017; 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:content-type; bh=68YJUDl98/bZKRH27CUBjNVC248aPx50zxON2hYp87I=; b=opiunoHRGRLNYTQEKhOzBXqxfA+MENw4qse4SEgNSsctqfJWTxHeR3/BoCWAeOWMNv EXQQnW8kiG1l/lU/uRhzr+c9BLfJs+lvrw2G0aK0WUNmeKhAtXfIh9na+SqBxnQzN6Bl ipWWqvSCdmCatREDHGScqKqMLW0RcPEDYX94vh1pjv7FgHI+rfQG2DDFGuE0gQtSMUY4 r8414qgoaXmvOSbOqLchP7MEbH0KbLn2W8/mIUoixb9ndpCBksJDdEocVKC9Zyg6xjSQ p8Jtlzz1gh8HZhmAkivPZYOJz3sMFN/Bnik5xlBjJa6Nvxr54Qr+PNr2xZMh/AtUX9UL sQKQ== X-Forwarded-Encrypted: i=1; AKwUvBy9TjpLaKBofTjwIeX+/O3+uD5+79wnX3pRQ9tLw5Kf6yIxCsHPesKwekLhVupPyL2JcfoLCkPanw3ZOW8=@vger.kernel.org X-Gm-Message-State: AFq9FYK/Nj+GR0SMF1vXYzgao2tfx4/oxc+Ej+h7be9/Ji5rspRHoM/X ZC8w0dez+aDGyvZ9LMoA5BqIgV+vhvM+mXT2jLqm2zMl4S7bATVdurtq X-Gm-Gg: AYBFou2P7yt4yDVNWR1YzdksJGqURgDn5jjnMUpRF/sI3eQ77bD7IYMbLcdRw6WRF9q gUP3GjayRAHVNMBFL9IJeyPfI/dDQdQo2RTKQd0iXdb0U9h0fYQJFlAuQU4AzU2CoP8Ta3No3EP 9bPJOqzjAywyJHjeCv/OipCltLysPeIotZSNJ+1BT7iajfVh2SrlySz8amvS2mFVGWMY4OuE4cS +IIzYp8SjcdxA9iRB02T2M0xms3kZE1nrvAHdUjKg2NO5l7sVcaZdjDHAVgZTP6nUYVl3xHSrJU v7rTC1M/duA9asp+24kUKFXUoqXWn5E1oDVaJZ4WMhUzX8XwNrt80gULcXhWRRAH7i5S8TnYEwu koQ5NZdXCHFO5Nn9Qvb79NxGzkSd9GQBK6mRrCJkpSa41h0cbhGYeA2SLpWK1a3zP5neHxmZyB+ PcKcCirpbDHaNm+oj19GQzBX797yKmJ3nhUKsBP9ReVzkZpzvycNmB5iM= X-Received: by 2002:a17:90b:3a4f:b0:3a0:2900:f55e with SMTP id 98e67ed59e1d1-3acef3e9905mr1225414a91.29.1792226217503; Sat, 17 Oct 2026 01:36:57 -0700 (PDT) Received: from Linux-PC ([2a09:bac5:1f0f:3141::4e8:8]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3ac9461d71esm12548544a91.7.2026.10.17.01.36.40 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 17 Oct 2026 01:36:56 -0700 (PDT) From: tianshi12127 To: Neil Armstrong , dri-devel@lists.freedesktop.org Cc: Jessica Zhang , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Simona Vetter , devicetree@vger.kernel.org, Rob Herring , Krzysztof Kozlowski , Conor Dooley , linux-kernel@vger.kernel.org, Lu Chen Subject: [PATCH 3/3] drm/panel: add driver for Smartisan TD4362 Date: Sat, 17 Oct 2026 16:35:31 +0800 Message-ID: <20261017083531.766557-4-tianshi12127@gmail.com> X-Mailer: git-send-email 2.56.0 In-Reply-To: <20261017083531.766557-1-tianshi12127@gmail.com> References: <20261017083531.766557-1-tianshi12127@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: Lu Chen Add support for the Smartisan TD4362 1080x2242 command mode DSI panel found in the Smartisan R1 (trident) smartphone. The initialization and power sequences were generated from the downstream device tree with linux-mdss-dsi-panel-driver-generator. Tested on a Smartisan R1 (trident). Signed-off-by: Lu Chen --- drivers/gpu/drm/panel/Kconfig | 13 + drivers/gpu/drm/panel/Makefile | 1 + .../gpu/drm/panel/panel-smartisan-td4362.c | 263 ++++++++++++++++++ 3 files changed, 277 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-smartisan-td4362.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index b30d7781745c..0b413152267f 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -1124,6 +1124,19 @@ config DRM_PANEL_SITRONIX_ST7789V Say Y here if you want to enable support for the Sitronix ST7789V controller for 240x320 LCD panels +config DRM_PANEL_SMARTISAN_TD4362 + tristate "Smartisan TD4362 DSI panel" + depends on OF + depends on DRM_MIPI_DSI + depends on BACKLIGHT_CLASS_DEVICE + help + Say Y here if you want to enable support for the Smartisan TD4362 + 1080x2242 command mode panel found in the Smartisan R1 (trident) + smartphone. The panel is driven over four MIPI DSI lanes in + command mode. + + If unsure, say N. + config DRM_PANEL_SONY_ACX565AKM tristate "Sony ACX565AKM panel" depends on GPIOLIB && OF && SPI diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 4532f79021ea..bc4fad310554 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -112,6 +112,7 @@ obj-$(CONFIG_DRM_PANEL_SHARP_LS060T1SX01) += panel-sharp-ls060t1sx01.o obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7701) += panel-sitronix-st7701.o obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7703) += panel-sitronix-st7703.o obj-$(CONFIG_DRM_PANEL_SITRONIX_ST7789V) += panel-sitronix-st7789v.o +obj-$(CONFIG_DRM_PANEL_SMARTISAN_TD4362) += panel-smartisan-td4362.o obj-$(CONFIG_DRM_PANEL_SUMMIT) += panel-summit.o obj-$(CONFIG_DRM_PANEL_SYNAPTICS_R63353) += panel-synaptics-r63353.o obj-$(CONFIG_DRM_PANEL_SYNAPTICS_TDDI) += panel-synaptics-tddi.o diff --git a/drivers/gpu/drm/panel/panel-smartisan-td4362.c b/drivers/gpu/drm/panel/panel-smartisan-td4362.c new file mode 100644 index 000000000000..dad4442d0421 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-smartisan-td4362.c @@ -0,0 +1,263 @@ +// SPDX-License-Identifier: GPL-2.0-only +// Copyright (c) 2026 Lu Chen +// Generated with linux-mdss-dsi-panel-driver-generator from vendor device tree: +// Copyright (c) 2013, The Linux Foundation. All rights reserved. + +#include +#include +#include +#include +#include + +#include