From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EF9833BC668; Sat, 9 May 2026 20:19:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778357955; cv=none; b=ZsTjvWHKJZ1nnCLnKEAC+iGl9AXrqAqQHNXetquyMbYJuHgc8D2zyd5YzrmeN32/OfgCR6hKmco8JGyAPjeN9niM/2uF2omO9lyE3tnrBYentNxhEMyQ91cC6oXkOPmi8UG9wAFMLfWIP0y6xSuZLxb0Z74EGaAJqZCGewn/UiM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778357955; c=relaxed/simple; bh=Xha5x8AED2JGJxZ/tARmY+VjqJwe8CN42y9O9JZ+boE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=h6k/KJTFSldWtizFoPbjoI92i1bE45t7PmxZcJdbGF+uj8S/pWHcBWSmiwkjnBTACSCxIaPoGFnV4445+jLjD2gS6GuqsfdcsDpSJu7+RDGsFJhE0SH3XzTqBWMzgoZsZ83DQjrzhgyDT8Kb1XBYAPOlzuU+RtwyR3Jj1gR6U8Y= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=rGiJz1yc; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="rGiJz1yc" Received: by smtp.kernel.org (Postfix) with ESMTPS id BE05FC2BCF4; Sat, 9 May 2026 20:19:14 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1778357954; bh=Xha5x8AED2JGJxZ/tARmY+VjqJwe8CN42y9O9JZ+boE=; h=From:Date:Subject:References:In-Reply-To:To:Cc:Reply-To:From; b=rGiJz1yciVhJw+FsFsrPVSDqlqxWKYETvrBfJX2EgihebGSHd9Of0714gc50iuItD mG6TLL6gB4MLiFvMPcV++CMtSkqbHxqtrjq/jqCp8hCfdLo9t/ZF0avcCg9ssE0VBu pAsM5hcPxku42U9UOp6WPCrb2pfSjJWtDGyRFHdafrKixMdjOW5h9nrjsCNekj/EH9 kba5Bkxak8NwS78tlPbcmqik48PoJ4xeWE8TCjYuYMOu5WqF2hGLW48YCcMgfCCpCz Rdyx/E+ckUpj2J4MCajm2IERIuCPVkFjEcDgycnlvpLOLcAcGosiObcABCdH1GvCsf SYFNPPMp76drw== Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id A1C60CD3447; Sat, 9 May 2026 20:19:14 +0000 (UTC) From: Aaron Kling via B4 Relay Date: Sat, 09 May 2026 15:18:58 -0500 Subject: [PATCH 2/2] drm/panel: Add panel driver for Chipone ICNA35XX based panels Precedence: bulk X-Mailing-List: devicetree@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260509-icna35xx-v1-2-688d3d4e10f9@gmail.com> References: <20260509-icna35xx-v1-0-688d3d4e10f9@gmail.com> In-Reply-To: <20260509-icna35xx-v1-0-688d3d4e10f9@gmail.com> To: Neil Armstrong , Jessica Zhang , David Airlie , Simona Vetter , Maarten Lankhorst , Maxime Ripard , Thomas Zimmermann , Rob Herring , Krzysztof Kozlowski , Conor Dooley Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, Aaron Kling , Teguh Sobirin X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1778357952; l=21386; i=webgeek1234@gmail.com; s=20250217; h=from:subject:message-id; bh=Rj2EMBJxxvPoIj+7Qw/tBWoPCVruVVezxE333w/Izrc=; b=nAVoSEngdwkOcGSjS1USz1gs4dg1MxX3PXJCiEpRKjeCwqbaZmW14kiAMtJrd3i03aIg9gi2v lHQmOcBKUGTD/AhhLe+VvY6UCteyszsHkqkOC54+hEWi6k3jAglNZBy X-Developer-Key: i=webgeek1234@gmail.com; a=ed25519; pk=TQwd6q26txw7bkK7B8qtI/kcAohZc7bHHGSD7domdrU= X-Endpoint-Received: by B4 Relay for webgeek1234@gmail.com/20250217 with auth_id=342 X-Original-From: Aaron Kling Reply-To: webgeek1234@gmail.com From: Teguh Sobirin This adds support for the ICNA3512 and ICNA3520 DDICs used in the AYN Odin 2 Portal and for both the AYN Odin 3 and the AYN Thor top panel respectively. Signed-off-by: Teguh Sobirin Co-developed-by: Aaron Kling Signed-off-by: Aaron Kling --- drivers/gpu/drm/panel/Kconfig | 11 + drivers/gpu/drm/panel/Makefile | 1 + drivers/gpu/drm/panel/panel-chipone-icna35xx.c | 618 +++++++++++++++++++++++++ 3 files changed, 630 insertions(+) diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index 7450b27622a233..1368b5a0b6c912 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -105,6 +105,17 @@ config DRM_PANEL_BOE_TV101WUM_LL2 Say Y here if you want to support for BOE TV101WUM-LL2 WUXGA PANEL DSI Video Mode panel +config DRM_PANEL_CHIPONE_ICNA35XX + tristate "Chipone ICNA35XX panel driver" + depends on OF + depends on DRM_MIPI_DSI + depends on BACKLIGHT_CLASS_DEVICE + select DRM_DISPLAY_HELPER + help + Say Y here if you want to enable support for the panels built + around the Chipone ICNA3512 and ICNA3520 display controllers, + such as some Tianma panels used in AYN Odin2 Portal and Thor. + config DRM_PANEL_CHIPWEALTH_CH13726A tristate "CHIPWEALTH CH13726A-based DSI panel" depends on OF diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index c2c5cf81711633..d39a8f82fa8c06 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -9,6 +9,7 @@ obj-$(CONFIG_DRM_PANEL_BOE_TD4320) += panel-boe-td4320.o obj-$(CONFIG_DRM_PANEL_BOE_TH101MB31UIG002_28A) += panel-boe-th101mb31ig002-28a.o obj-$(CONFIG_DRM_PANEL_BOE_TV101WUM_LL2) += panel-boe-tv101wum-ll2.o obj-$(CONFIG_DRM_PANEL_BOE_TV101WUM_NL6) += panel-boe-tv101wum-nl6.o +obj-$(CONFIG_DRM_PANEL_CHIPONE_ICNA35XX) += panel-chipone-icna35xx.o obj-$(CONFIG_DRM_PANEL_CHIPWEALTH_CH13726A) += panel-chipwealth-ch13726a.o obj-$(CONFIG_DRM_PANEL_DSI_CM) += panel-dsi-cm.o obj-$(CONFIG_DRM_PANEL_LVDS) += panel-lvds.o diff --git a/drivers/gpu/drm/panel/panel-chipone-icna35xx.c b/drivers/gpu/drm/panel/panel-chipone-icna35xx.c new file mode 100644 index 00000000000000..1be903270db8e2 --- /dev/null +++ b/drivers/gpu/drm/panel/panel-chipone-icna35xx.c @@ -0,0 +1,618 @@ +// SPDX-License-Identifier: GPL-2.0-only +/* + * Chipone ICNA35XX Driver IC panels driver + * + * Copyright (c) 2025 Teguh Sobirin + */ + +#include +#include +#include +#include +#include +#include +#include + +#include