Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp1153207imm; Tue, 15 May 2018 14:44:56 -0700 (PDT) X-Google-Smtp-Source: AB8JxZpiDqZzAZ0OwguTnmx5W5j3lGdbUqe7HuciqzHupZX57SyLc5/rXwc0n9G+gK34seHBKAY4 X-Received: by 2002:a65:604f:: with SMTP id b15-v6mr13539608pgv.452.1526420696386; Tue, 15 May 2018 14:44:56 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526420696; cv=none; d=google.com; s=arc-20160816; b=FWzOIK33VN9f1GCvB8OO1jx2bfKKmWXMkDMfsyUTGfEpHOVdwuBefRDG0s2YozEfum znxJqkwb/TKBhFqxUZFxx3CjVYkutGEqgI2b709VW76YmNRzojsuxpYSbKIE1wOGgC8f oTph7PalsByR/QThjWERtMY7cCMA9+HWmMrePMXfzsc9CYUfQcmiHYmj9fxA/R72MxN9 8AZt0iYHksVzIh9buP0MRNAUbwdaZDUA6XB8/j5OIycnnhVdCcee2UojyFWTMQBAECdt saWR9cGW0tYGpZvAkw7U10HgVwpzQcL014qKXV/xVqNR1c4A0WZ9Bihd+6r82qTFwbnl Uw6w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:cc:to:subject :message-id:date:from:references:in-reply-to:mime-version :dkim-signature:arc-authentication-results; bh=3elS26EH0ZUmjLmFS0BTP2SSCtNurBB9neLdsquxwR0=; b=Qd8+dtDo8wtxE8K7C5M4hgozCieOUSYr7fXfYWDUl0tGDtABRfh3fApcCnjJazWiD0 Zr7hdk77ESIkA42S3ObvNnOTvxnxDDbZGDmO3qP5LnzH9JkNu5dlS8BzlmDLweHMydLg UJWTALG3AyCTnbo5MiFiC8xumATYqy8bQ/+DjVLF3YaX/A1PULG2nMqCU/LTcYP1oWX/ R51TjnHg0mAAHEQYEy/dpMRW+L35MnezDSC/G0/6An+cg+A3fMfW9oP/XADpf2d4LARs S2dAsDrUfJiVGRxW46i1guePIUSrvbt55LH2ycSig9k4Hk8tJmhzOHEk90ocF8DwR8tK AJuw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=CJYNAbEx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 70-v6si1009707pfu.274.2018.05.15.14.44.42; Tue, 15 May 2018 14:44:56 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=CJYNAbEx; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752336AbeEOVnZ (ORCPT + 99 others); Tue, 15 May 2018 17:43:25 -0400 Received: from mail-qk0-f193.google.com ([209.85.220.193]:40241 "EHLO mail-qk0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751233AbeEOVnW (ORCPT ); Tue, 15 May 2018 17:43:22 -0400 Received: by mail-qk0-f193.google.com with SMTP id s83-v6so1484695qke.7; Tue, 15 May 2018 14:43:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=3elS26EH0ZUmjLmFS0BTP2SSCtNurBB9neLdsquxwR0=; b=CJYNAbExPBNGCi+gSUNHdMtNn3V8mzOztvQZpy9MNuqyTTqpvwb3mbXGzyMYubhWbF wmy8wT2WFvr4fTs3C+dM4foCtH1lUnwAlvQ06jtN9BW+s6IKQ4oIziKRYbxG7vUl5XJw y6JCEcHYkq1zyUc22FjwHdN4uZjm6W73zarXNILbGHbQzEMeYB5R+45aLJJv6tnXRb7V //k5a/yidhEftH6d2iugyb/RHq0TEFRqMV8Je+r/mpa2APTcdgZHSIkSDzTihK+4kSBw xQoHq6HF/Q5rKRyJDEp+a//n5yUEbQJ6pSVqtzMerGiGf6qteImA2PQiaThXL/S+DT/Z gY8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=3elS26EH0ZUmjLmFS0BTP2SSCtNurBB9neLdsquxwR0=; b=RFDJ0+bmGDGRsZDA1n8Jlis63iofBOitcoHwdE9edkD3rPt4nutkq9KyJj1djC+Uo0 cuumerbIdlFNcokjcVrsFI2i9zVsF/6mpWct3B0dadvGTfNN7O1weEJ48viIxsYvnAdz HcMev3Kp0+7be8ycQXMRRfQY7VoPUITZsuRgBiyJxaVLij9S64XwuxvxLNavpYPRcWS/ jXp4ySHbLsg8J7XZPgV5isYCtnqOb8zsEUsYKRbGTmKMas8akt/J0xgiYmSUdHuWygOh BFDhzGrmNbFIBrQOSf7+/25kq4KvG1cQ3POjEkrZTZQBZNi3FLp5xgdWtqAjuxE3pZBy l+uA== X-Gm-Message-State: ALKqPwdfPIORSXJJz8/7imrRuQSCxIHpkX3yiI4rKu2letV7JHJez+Ja m24G+aigtoDUm8kItGLBNWBy7BUOJNB/FdlVPWY= X-Received: by 2002:a37:1f06:: with SMTP id f6-v6mr14310087qkf.147.1526420601595; Tue, 15 May 2018 14:43:21 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.152.150 with HTTP; Tue, 15 May 2018 14:43:21 -0700 (PDT) In-Reply-To: <20180515014349.26226-4-david@lechnology.com> References: <20180515014349.26226-1-david@lechnology.com> <20180515014349.26226-4-david@lechnology.com> From: Andy Shevchenko Date: Wed, 16 May 2018 00:43:21 +0300 Message-ID: Subject: Re: [PATCH 3/3] drm/tinydrm: new driver for ILI9341 display panels To: David Lechner Cc: dri-devel@lists.freedesktop.org, devicetree , =?UTF-8?Q?Noralf_Tr=C3=B8nnes?= , Rob Herring , Mark Rutland , limor@ladyada.net, Nitin Patil , Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, May 15, 2018 at 4:43 AM, David Lechner wrote= : > This adds a new driver for display panels that use the Ilitek ILI9341 > controller. It currently supports a single display panel, namely > the YX240QV29-T (e.g. Adafruit 2.4" TFT). > > The init sequence is from the Adafruit Python library for the ILI9341 > controller. https://github.com/adafruit/Adafruit_Python_ILI9341 Some minor style nitpicks, otherwise LGTM Reviewed-by: Andy Shevchenko > > Signed-off-by: David Lechner > --- > MAINTAINERS | 6 + > drivers/gpu/drm/tinydrm/Kconfig | 10 ++ > drivers/gpu/drm/tinydrm/Makefile | 1 + > drivers/gpu/drm/tinydrm/ili9341.c | 239 ++++++++++++++++++++++++++++++ > 4 files changed, 256 insertions(+) > create mode 100644 drivers/gpu/drm/tinydrm/ili9341.c > > diff --git a/MAINTAINERS b/MAINTAINERS > index bc219de9cbee..ffa099abbd79 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -4480,6 +4480,12 @@ S: Maintained > F: drivers/gpu/drm/tinydrm/ili9225.c > F: Documentation/devicetree/bindings/display/ilitek,ili9225.txt > > +DRM DRIVER FOR ILITEK ILI9341 PANELS > +M: David Lechner > +S: Maintained > +F: drivers/gpu/drm/tinydrm/ili9341.c > +F: Documentation/devicetree/bindings/display/ilitek,ili9341.txt > + > DRM DRIVER FOR INTEL I810 VIDEO CARDS > S: Orphan / Obsolete > F: drivers/gpu/drm/i810/ > diff --git a/drivers/gpu/drm/tinydrm/Kconfig b/drivers/gpu/drm/tinydrm/Kc= onfig > index 4592a5e3f20b..7a8008b0783f 100644 > --- a/drivers/gpu/drm/tinydrm/Kconfig > +++ b/drivers/gpu/drm/tinydrm/Kconfig > @@ -20,6 +20,16 @@ config TINYDRM_ILI9225 > > If M is selected the module will be called ili9225. > > +config TINYDRM_ILI9341 > + tristate "DRM support for ILI9341 display panels" > + depends on DRM_TINYDRM && SPI Can't we do something like if SPI ... endif ? > + select TINYDRM_MIPI_DBI > + help > + DRM driver for the following Ilitek ILI9341 panels: > + * YX240QV29-T 2.4" 240x320 TFT (Adafruit 2.4") > + > + If M is selected the module will be called ili9341. > + > config TINYDRM_MI0283QT > tristate "DRM support for MI0283QT" > depends on DRM_TINYDRM && SPI > diff --git a/drivers/gpu/drm/tinydrm/Makefile b/drivers/gpu/drm/tinydrm/M= akefile > index 49a111929724..14d99080665a 100644 > --- a/drivers/gpu/drm/tinydrm/Makefile > +++ b/drivers/gpu/drm/tinydrm/Makefile > @@ -5,6 +5,7 @@ obj-$(CONFIG_TINYDRM_MIPI_DBI) +=3D mipi-dbi.o > > # Displays > obj-$(CONFIG_TINYDRM_ILI9225) +=3D ili9225.o > +obj-$(CONFIG_TINYDRM_ILI9341) +=3D ili9341.o > obj-$(CONFIG_TINYDRM_MI0283QT) +=3D mi0283qt.o > obj-$(CONFIG_TINYDRM_REPAPER) +=3D repaper.o > obj-$(CONFIG_TINYDRM_ST7586) +=3D st7586.o > diff --git a/drivers/gpu/drm/tinydrm/ili9341.c b/drivers/gpu/drm/tinydrm/= ili9341.c > new file mode 100644 > index 000000000000..2ce4244a68c3 > --- /dev/null > +++ b/drivers/gpu/drm/tinydrm/ili9341.c > @@ -0,0 +1,239 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +/* > + * DRM driver for Ilitek ILI9341 panels > + * > + * Copyright 2018 David Lechner > + * > + * Based on mi0283qt.c: > + * Copyright 2016 Noralf Tr=C3=B8nnes > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include Can it be in order? > +#include > +#include > +#include