From patchwork Wed Jun 26 14:44:33 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Michael Walle X-Patchwork-Id: 13713103 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 6D95EC3064D for ; Wed, 26 Jun 2024 14:45:06 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 44B7010E8E1; Wed, 26 Jun 2024 14:45:05 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="upwn2SCQ"; dkim-atps=neutral Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by gabe.freedesktop.org (Postfix) with ESMTPS id 2F18510E8ED for ; Wed, 26 Jun 2024 14:45:02 +0000 (UTC) Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 07293CE221C; Wed, 26 Jun 2024 14:44:57 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 32D8BC116B1; Wed, 26 Jun 2024 14:44:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1719413096; bh=CzoOpL5mtlI7yXIbI7438/1gR7GoDL3tWXn3Po6a/Kc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=upwn2SCQ/C3Qg03e6ZzsC4IlS2G6usCC46Wlc+0RpRGmgrQkU+vU5+Blcg5oTtiPk vZMPpv4veVpaP9obn/fTPgRu7aYRSrkToaQfIRFB6S0FdWZBWuC7HHsXT14NViWp9G 8ACi+ntZJJAr3GaPFJZnbxwalpbjGWgMyRSHjsr5wIHFWkRRMltFoSOlu6KfdvSv4g tUffYDnJb6KPGzGeOY0/SU1UksfjmiGpBi91X1BGpoWcWKFtKUTlo8Ppv7uyU+R+I0 mILjKylxLPmzP0IXN68B1tsMXAqOEqYxuBvnof123lKLc5z/K8sagzqiYezmOJFQnp mbp3EO/ny4jzQ== From: Michael Walle To: Neil Armstrong , Jessica Zhang , David Airlie , Daniel Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Rob Herring , Krzysztof Kozlowski , Conor Dooley , Michael Walle , Dmitry Baryshkov Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Gunnar Dibbern Subject: [PATCH v2 2/2] drm/panel: add Ilitek ILI9806E panel driver Date: Wed, 26 Jun 2024 16:44:33 +0200 Message-Id: <20240626144433.3097793-3-mwalle@kernel.org> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240626144433.3097793-1-mwalle@kernel.org> References: <20240626144433.3097793-1-mwalle@kernel.org> MIME-Version: 1.0 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" The Ortustech COM35H3P70ULC panel is based on the ILI9806E DSI display controller. Co-developed-by: Gunnar Dibbern Signed-off-by: Gunnar Dibbern Signed-off-by: Michael Walle Reviewed-by: Neil Armstrong Reviewed-by: Jessica Zhang --- MAINTAINERS | 5 + drivers/gpu/drm/panel/Kconfig | 9 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-ilitek-ili9806e.c | 402 ++++++++++++++++++ 4 files changed, 417 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-ilitek-ili9806e.c diff --git a/MAINTAINERS b/MAINTAINERS index e2d8fdda1737..61352f26f2d9 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -7003,6 +7003,11 @@ S: Maintained F: Documentation/devicetree/bindings/display/panel/ilitek,ili9805.yaml F: drivers/gpu/drm/panel/panel-ilitek-ili9805.c +DRM DRIVER FOR ILITEK ILI9806E PANELS +M: Michael Walle +S: Maintained +F: drivers/gpu/drm/panel/panel-ilitek-ili9806e.c + DRM DRIVER FOR JADARD JD9365DA-H3 MIPI-DSI LCD PANELS M: Jagan Teki S: Maintained diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index bf4eadfe21cb..904a928bc60e 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -205,6 +205,15 @@ config DRM_PANEL_ILITEK_ILI9805 Say Y if you want to enable support for panels based on the Ilitek ILI9805 controller. +config DRM_PANEL_ILITEK_ILI9806E + tristate "Ilitek ILI9806E-based panels" + depends on OF + depends on DRM_MIPI_DSI + depends on BACKLIGHT_CLASS_DEVICE + help + Say Y if you want to enable support for panels based on the + Ilitek ILI9806E controller. + config DRM_PANEL_ILITEK_ILI9881C tristate "Ilitek ILI9881C-based panels" depends on OF diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 051b75b3df7b..12ce91416849 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -21,6 +21,7 @@ obj-$(CONFIG_DRM_PANEL_HIMAX_HX8394) += panel-himax-hx8394.o obj-$(CONFIG_DRM_PANEL_ILITEK_IL9322) += panel-ilitek-ili9322.o obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9341) += panel-ilitek-ili9341.o obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9805) += panel-ilitek-ili9805.o +obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9806E) += panel-ilitek-ili9806e.o obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9881C) += panel-ilitek-ili9881c.o obj-$(CONFIG_DRM_PANEL_ILITEK_ILI9882T) += panel-ilitek-ili9882t.o obj-$(CONFIG_DRM_PANEL_INNOLUX_EJ030NA) += panel-innolux-ej030na.o diff --git a/drivers/gpu/drm/panel/panel-ilitek-ili9806e.c b/drivers/gpu/drm/panel/panel-ilitek-ili9806e.c new file mode 100644 index 000000000000..e4a44cd26c4d --- /dev/null +++ b/drivers/gpu/drm/panel/panel-ilitek-ili9806e.c @@ -0,0 +1,402 @@ +// SPDX-License-Identifier: GPL-2.0 + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include