From mboxrd@z Thu Jan 1 00:00:00 1970 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 7B1C9C4332F for ; Wed, 14 Dec 2022 18:06:57 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id EF02410E43D; Wed, 14 Dec 2022 18:06:34 +0000 (UTC) Received: from mail-oa1-x36.google.com (mail-oa1-x36.google.com [IPv6:2001:4860:4864:20::36]) by gabe.freedesktop.org (Postfix) with ESMTPS id B3FBD10E023 for ; Wed, 14 Dec 2022 18:06:24 +0000 (UTC) Received: by mail-oa1-x36.google.com with SMTP id 586e51a60fabf-144b21f5e5fso17611911fac.12 for ; Wed, 14 Dec 2022 10:06:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; 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; bh=Im6kcd4sbmkKStNVEAWChqLptZ+EpwHUmadj/iD4xaE=; b=a/Q5dxNmLSuZ7svjAp2qgHUIJRdpgMAvNkkqDz4sZECZVeT8Sfg4zFzUsNxDqA8R/2 yeFLy2CoQJ0K91f3QNln2HmwJyndFC5DEw7sb0uBngd7W8/lfpTeyFGocT6sJY9zfsro EgZBKQTLZoU/kUYFfYrft5uzc5UfAucpoz491bJzxRHoKKFTxoMcdAyDisKgtsBccz2D GDI+VoN216+G9BHntwKSYphi+DAfpGektyUG53m6PoSafEfDJYye4fhcSUfg2PkyQjCf TSGC2xEZAV4SWYiqH/iQ8kMxuqRkfAlCvy1ryKDYBpwW/rACyMCU9jQ70wM6ptknsSwA RGkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Im6kcd4sbmkKStNVEAWChqLptZ+EpwHUmadj/iD4xaE=; b=T4I+nSOUaY0ysT+2MCa3oRJDM663AQq73p3jpv4ba/cQuc1OkrtZXRq1e1UgWBZhOP joBv5j5jauPsQ96iwK4Ks2h83EzDlD2EMrliMUH2u0b8+n10LCHQLVM7FkJVbpgFuuM+ +AZK3E55IYGX/wwQBJX5DFMW2HfQ4+LeZFtjqAZDjDanZoZs1lAqCIjuZ5uuH5i/2FkU iHlO62QZrUtbZiOGihWoRfwIFYjyWM84HTjWrf6sR8r4eFMHjZtVClkwsZ5iW4ObErhJ PC4rPbM1pn5PvS2eYbAH08ZJlAgIrh5mxg3/Qr1DqiWTZmQSL5+iXNV4vX90pcOEy8Ub X3uQ== X-Gm-Message-State: ANoB5pnNWGcbesfBOG3EF3tQujI1H26cu1TyP2tDP35g2sPD3Brk50OX 3r7PsLYvSNpMMdyfxMnI84Y6mconNj4= X-Google-Smtp-Source: AA0mqf7KC8L0eXWOpowkgGqwVJzsE5kTt9YYyGsXtGEpwsh/xzuPrUFf0ycMlGZF53uE5VXoYdoC0A== X-Received: by 2002:a05:6870:e90:b0:144:a164:1c70 with SMTP id mm16-20020a0568700e9000b00144a1641c70mr14790000oab.49.1671041183421; Wed, 14 Dec 2022 10:06:23 -0800 (PST) Received: from localhost.localdomain (76-244-6-13.lightspeed.rcsntx.sbcglobal.net. [76.244.6.13]) by smtp.gmail.com with ESMTPSA id y8-20020a056870b00800b0013b0b19100fsm3034008oae.32.2022.12.14.10.06.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 14 Dec 2022 10:06:22 -0800 (PST) From: Chris Morgan To: dri-devel@lists.freedesktop.org Subject: [PATCH V5 3/4] drm/panel: Add Magnachip D53E6EA8966 Panel Driver Date: Wed, 14 Dec 2022 12:06:10 -0600 Message-Id: <20221214180611.109651-4-macroalpha82@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20221214180611.109651-1-macroalpha82@gmail.com> References: <20221214180611.109651-1-macroalpha82@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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: , Cc: devicetree@vger.kernel.org, Chris Morgan , tzimmermann@suse.de, sam@ravnborg.org, robh+dt@kernel.org, thierry.reding@gmail.com, krzysztof.kozlowski+dt@linaro.org, Maya Matuszczyk Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" From: Chris Morgan Support Magnachip D53E6EA8966 based panels such as the Samsung AMS495QA01 panel as found on the Anbernic RG503. Note this driver supports only the AMS495QA01 today which receives video signals via DSI, however it receives commands via 3-wire SPI. Signed-off-by: Chris Morgan Signed-off-by: Maya Matuszczyk --- drivers/gpu/drm/panel/Kconfig | 10 + drivers/gpu/drm/panel/Makefile | 1 + .../drm/panel/panel-magnachip-d53e6ea8966.c | 515 ++++++++++++++++++ 3 files changed, 526 insertions(+) create mode 100644 drivers/gpu/drm/panel/panel-magnachip-d53e6ea8966.c diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig index a582ddd583c2..1f81fe8a2f8a 100644 --- a/drivers/gpu/drm/panel/Kconfig +++ b/drivers/gpu/drm/panel/Kconfig @@ -288,6 +288,16 @@ config DRM_PANEL_LG_LG4573 Say Y here if you want to enable support for LG4573 RGB panel. To compile this driver as a module, choose M here. +config DRM_PANEL_MAGNACHIP_D53E6EA8966 + tristate "Magnachip D53E6EA8966 DSI panel" + depends on OF && SPI + depends on DRM_MIPI_DSI + select DRM_MIPI_DBI + help + DRM panel driver for the Samsung AMS495QA01 panel controlled + with the Magnachip D53E6EA8966 panel IC. This panel receives + video data via DSI but commands via 3-Wire 9-bit SPI. + config DRM_PANEL_NEC_NL8048HL11 tristate "NEC NL8048HL11 RGB panel" depends on GPIOLIB && OF && SPI diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile index 34e717382dbb..7c09cd480c69 100644 --- a/drivers/gpu/drm/panel/Makefile +++ b/drivers/gpu/drm/panel/Makefile @@ -26,6 +26,7 @@ obj-$(CONFIG_DRM_PANEL_LEADTEK_LTK050H3146W) += panel-leadtek-ltk050h3146w.o obj-$(CONFIG_DRM_PANEL_LEADTEK_LTK500HD1829) += panel-leadtek-ltk500hd1829.o obj-$(CONFIG_DRM_PANEL_LG_LB035Q02) += panel-lg-lb035q02.o obj-$(CONFIG_DRM_PANEL_LG_LG4573) += panel-lg-lg4573.o +obj-$(CONFIG_DRM_PANEL_MAGNACHIP_D53E6EA8966) += panel-magnachip-d53e6ea8966.o obj-$(CONFIG_DRM_PANEL_NEC_NL8048HL11) += panel-nec-nl8048hl11.o obj-$(CONFIG_DRM_PANEL_NEWVISION_NV3051D) += panel-newvision-nv3051d.o obj-$(CONFIG_DRM_PANEL_NEWVISION_NV3052C) += panel-newvision-nv3052c.o diff --git a/drivers/gpu/drm/panel/panel-magnachip-d53e6ea8966.c b/drivers/gpu/drm/panel/panel-magnachip-d53e6ea8966.c new file mode 100644 index 000000000000..c1b80f2f296c --- /dev/null +++ b/drivers/gpu/drm/panel/panel-magnachip-d53e6ea8966.c @@ -0,0 +1,515 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Magnachip d53e6ea8966 MIPI-DSI panel driver + * Copyright (C) 2022 Chris Morgan + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include