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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 98D58C4708E for ; Tue, 3 Jan 2023 21:29:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References: Message-ID:Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=7IE1dodUSCqoYiZG/KHV9ITqgCGExLOFHTt5QV6C6TU=; b=Nha6TN51AuQOYx WelZHRPfu/WpktT+ZJ+iaBqNF8hByFgaPqp9RX1rIIvAU2YX7rLQuMwZeJw9Nf6dMNDJ82MnLH7eU zpUcnHq+V703IjwUU7810X3zcibSP6w8OWtHO0UqVjt8vgqMuZwlORMdFCP33rXFgBJovA6I4uv2s RgPg3SD1XvCHWpB+VHyf/rV25TFBunvvBLHJtiSL9iVAe8tNmZFAkJ++QdhQfQpl/ueOE7UHq/m4W llz5y9quPvNK+LuA8HFgKOhxdocmIRFetv6JxwvLp6NNl5IjzGctDLFN6g+vLtddTOdvR5ij3yzi/ I/Y/wJ+Nu3EWSQnSdlgQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1pCoqH-0057us-Gq; Tue, 03 Jan 2023 21:29:05 +0000 Received: from desiato.infradead.org ([2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1pCohx-0054dG-JM for linux-rockchip@bombadil.infradead.org; Tue, 03 Jan 2023 21:20:38 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=w5Zo8g3TaYgtcTCgy3oZXz9/r6oEXx/FaThzGWxOlgQ=; b=Z2iGwBX/AMuZTxoeHpYTHhYEQf BeFnrsygVX7vOOTIKbUPhkcANtpKMaefrzOtPq7Sdnl2VE96yiY8gZ2fJxGhsbZVVaySC/ZZbvkKC +9RlulNNum3KHX5Oc3tj7wdYpse2qrQT9eJmbzmep3srZjWLODYjScVQLN4s4Po1s3I02KGW6fsLX pxpYBykNer+Z3MuIHyX2adWDOwow9dyM3p/f0RPjoHGt33c77C/Vp72nQg2H5c0o2nHjnmSqxBp5J q8XLa7I1XJmharLs6qF1QaxwOMH8NPmw3Wq8o5GKT2vliAnYJQpRx/IHLoBxMXX+AJjjJR3Hhr9s/ kvDv8INQ==; Received: from mailrelay2-1.pub.mailoutpod2-cph3.one.com ([46.30.211.177]) by desiato.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1pCohl-000hkd-0W for linux-rockchip@lists.infradead.org; Tue, 03 Jan 2023 21:20:21 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ravnborg.org; s=rsa2; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=w5Zo8g3TaYgtcTCgy3oZXz9/r6oEXx/FaThzGWxOlgQ=; b=QF69kclAMJ1WiSsVmXgspI+wlsnU1t5wU03xvDraQsT68u08anwbPpNJIn/TflWrKk2F+ONiHpzGM MX3JjayNIqj5eOUlBv66xgI3DBgKDmsNGcW6bwmy+pJ+v7niPJR0EvWAogkn5hcfU3hbddwbZOj4vx jm00BoJwXtI+/24vTjoNHC34xV2mJtEMsiVBWA84nAxrCDsFwA6nb9fbaM5RqKMsd2tDjijaDIf8X5 R9noZ5HBCHQTQJ/cLbA7rNjRFT6qYvHH8+Mj/2+mpnaeQXmzSFiJ0bqX2P1fePrrhSbAGjXwZFh8HE Yb7WEmng4fXdoz/1YH5V82TTcfmAz/g== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ravnborg.org; s=ed2; h=in-reply-to:content-type:mime-version:references:message-id:subject:cc:to: from:date:from; bh=w5Zo8g3TaYgtcTCgy3oZXz9/r6oEXx/FaThzGWxOlgQ=; b=sbKGLxlBEXYMWohDM8FaIG2hTwP7YZamH7LZXuMzh/8Q6ed7kYQM7W2fjeo38rD5YlasF6hANxnXf J6z4YNQAQ== X-HalOne-ID: b45856cc-8ba1-11ed-b3cd-93f0a866dfbb Received: from ravnborg.org (2-105-2-98-cable.dk.customer.tdc.net [2.105.2.98]) by mailrelay2 (Halon) with ESMTPSA id b45856cc-8ba1-11ed-b3cd-93f0a866dfbb; Tue, 03 Jan 2023 20:03:38 +0000 (UTC) Date: Tue, 3 Jan 2023 21:03:36 +0100 From: Sam Ravnborg To: Chris Morgan Cc: dri-devel@lists.freedesktop.org, devicetree@vger.kernel.org, linux-rockchip@lists.infradead.org, maccraft123mc@gmail.com, tzimmermann@suse.de, mripard@kernel.org, maarten.lankhorst@linux.intel.com, heiko@sntech.de, krzysztof.kozlowski+dt@linaro.org, robh+dt@kernel.org, daniel@ffwll.ch, airlied@gmail.com, thierry.reding@gmail.com, linus.walleij@linaro.org, Chris Morgan Subject: Re: [PATCH V7 3/4] drm/panel: Add Magnachip D53E6EA8966 Panel Driver Message-ID: References: <20230103190707.104595-1-macroalpha82@gmail.com> <20230103190707.104595-4-macroalpha82@gmail.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20230103190707.104595-4-macroalpha82@gmail.com> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230103_212017_790870_4413B66A X-CRM114-Status: GOOD ( 36.94 ) X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+linux-rockchip=archiver.kernel.org@lists.infradead.org Hi Chris. On Tue, Jan 03, 2023 at 01:07:06PM -0600, Chris Morgan wrote: > 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 using DBI. > > Signed-off-by: Chris Morgan > Signed-off-by: Maya Matuszczyk > Reviewed-by: Linus Walleij Sorry for being late with my feedback - I have not had any linux bandwidth lately. See a few comments in the following. Mostly, I am concerned that backlight does not work in an optimal way. Sam > --- > drivers/gpu/drm/panel/Kconfig | 11 + > drivers/gpu/drm/panel/Makefile | 1 + > .../drm/panel/panel-magnachip-d53e6ea8966.c | 514 ++++++++++++++++++ > 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 737edcdf9eef..204b84a83604 100644 > --- a/drivers/gpu/drm/panel/Kconfig > +++ b/drivers/gpu/drm/panel/Kconfig > @@ -298,6 +298,17 @@ 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 > + depends on BACKLIGHT_CLASS_DEVICE > + 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 9-bit SPI using DBI. > + > 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 f8f9d9f6a307..20de312aa5e9 100644 > --- a/drivers/gpu/drm/panel/Makefile > +++ b/drivers/gpu/drm/panel/Makefile > @@ -27,6 +27,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..ec90da8e2ae7 > --- /dev/null > +++ b/drivers/gpu/drm/panel/panel-magnachip-d53e6ea8966.c > @@ -0,0 +1,514 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* > + * Magnachip d53e6ea8966 MIPI-DSI panel driver > + * Copyright (C) 2022 Chris Morgan 2023 > + */ > + > +#include > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include