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 X-Spam-Level: X-Spam-Status: No, score=-13.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F32A9C432BE for ; Tue, 3 Aug 2021 14:45:46 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id 6FA2460F58 for ; Tue, 3 Aug 2021 14:45:46 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.4.1 mail.kernel.org 6FA2460F58 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=ravnborg.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id F1C206E071; Tue, 3 Aug 2021 14:45:45 +0000 (UTC) Received: from mx2.smtp.larsendata.com (mx2.smtp.larsendata.com [91.221.196.228]) by gabe.freedesktop.org (Postfix) with ESMTPS id 572CF6E071 for ; Tue, 3 Aug 2021 14:45:44 +0000 (UTC) Received: from mail01.mxhotel.dk (mail01.mxhotel.dk [91.221.196.236]) by mx2.smtp.larsendata.com (Halon) with ESMTPS id 845d8aaf-f469-11eb-8d1a-0050568cd888; Tue, 03 Aug 2021 14:45:59 +0000 (UTC) Received: from ravnborg.org (80-162-45-141-cable.dk.customer.tdc.net [80.162.45.141]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: sam@ravnborg.org) by mail01.mxhotel.dk (Postfix) with ESMTPSA id 47FD3194B8E; Tue, 3 Aug 2021 16:46:06 +0200 (CEST) Date: Tue, 3 Aug 2021 16:45:39 +0200 X-Report-Abuse-To: abuse@mxhotel.dk From: Sam Ravnborg To: Markuss Broks Cc: linux-kernel@vger.kernel.org, linus.walleij@linaro.org, phone-devel@vger.kernel.org, Thierry Reding , David Airlie , Daniel Vetter , dri-devel@lists.freedesktop.org Subject: Re: [PATCH] drm/panel: s6d27a1: Add driver for Samsung S6D27A1 display panel Message-ID: References: <20210803135419.26495-1-markuss.broks@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20210803135419.26495-1-markuss.broks@gmail.com> 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" Hi Markuss, just a random collection of minor things to fix. Overall the driver looks good. Sam On Tue, Aug 03, 2021 at 04:54:18PM +0300, Markuss Broks wrote: > This adds a driver for Samsung S6D27A1 display controller and panel. > This panel is found in the Samsung GT-I8160 mobile phone, > and possibly some other mobile phones. > > This display needs manufactrer commands to configure it to a working state; fix spelling of manufactrer > the commands used in this driver were taken from downstream driver > by Gareth Phillips; sadly, there is almost no documentation on what they > actually do. > > This driver re-uses the DBI infrastructure to communicate with the display. > > This driver is heavily based on WideChips WS2401 display controller > driver by Linus Walleij and on other panel drivers for reference. > > Signed-off-by: Markuss Broks > --- > drivers/gpu/drm/panel/Kconfig | 8 + > drivers/gpu/drm/panel/Makefile | 1 + > drivers/gpu/drm/panel/panel-samsung-s6d27a1.c | 342 ++++++++++++++++++ > 3 files changed, 351 insertions(+) > create mode 100644 drivers/gpu/drm/panel/panel-samsung-s6d27a1.c > > diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig > index f4fe1dba99..21007b2032 100644 > --- a/drivers/gpu/drm/panel/Kconfig > +++ b/drivers/gpu/drm/panel/Kconfig > @@ -348,6 +348,14 @@ config DRM_PANEL_SAMSUNG_S6D16D0 > depends on DRM_MIPI_DSI > select VIDEOMODE_HELPERS > > +config DRM_PANEL_SAMSUNG_S6D27A1 > + tristate "Samsung S6D27A1 DPI panel driver" > + depends on OF && SPI && GPIOLIB > + select DRM_MIPI_DBI > + help > + Say Y here if you want to enable support for the Samsung > + S6D27A1 DPI 480x800 panel. > + > config DRM_PANEL_SAMSUNG_S6E3HA2 > tristate "Samsung S6E3HA2 DSI video mode panel" > depends on OF > diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile > index d94c27df17..d2a6fe81e9 100644 > --- a/drivers/gpu/drm/panel/Makefile > +++ b/drivers/gpu/drm/panel/Makefile > @@ -35,6 +35,7 @@ obj-$(CONFIG_DRM_PANEL_RAYDIUM_RM68200) += panel-raydium-rm68200.o > obj-$(CONFIG_DRM_PANEL_RONBO_RB070D30) += panel-ronbo-rb070d30.o > obj-$(CONFIG_DRM_PANEL_SAMSUNG_LD9040) += panel-samsung-ld9040.o > obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6D16D0) += panel-samsung-s6d16d0.o > +obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6D27A1) += panel-samsung-s6d27a1.o > obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2) += panel-samsung-s6e3ha2.o > obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03) += panel-samsung-s6e63j0x03.o > obj-$(CONFIG_DRM_PANEL_SAMSUNG_S6E63M0) += panel-samsung-s6e63m0.o > diff --git a/drivers/gpu/drm/panel/panel-samsung-s6d27a1.c b/drivers/gpu/drm/panel/panel-samsung-s6d27a1.c > new file mode 100644 > index 0000000000..86cf8d316b > --- /dev/null > +++ b/drivers/gpu/drm/panel/panel-samsung-s6d27a1.c > @@ -0,0 +1,342 @@ > +// SPDX-License-Identifier: GPL-2.0 > +/* > + * Panel driver for the Samsung S6D27A1 480x800 DPI RGB panel. > + * Found in the Samsung Galaxy Ace 2 GT-I8160 mobile phone. > + */ > + > +#include > +#include > +#include > + > +#include No backlight support - drop header. > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include