From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thierry Reding Subject: Re: [PATCH v3 7/7] drm/tinydrm: Add support for Multi-Inno MI0283QT display Date: Mon, 6 Feb 2017 09:25:52 +0100 Message-ID: <20170206082552.GB27607@ulmo.ba.sec> References: <20170131160319.9695-1-noralf@tronnes.org> <20170131160319.9695-8-noralf@tronnes.org> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="EuxKj2iCbKjpUGkD" Return-path: Content-Disposition: inline In-Reply-To: <20170131160319.9695-8-noralf-L59+Z2yzLopAfugRpC6u6w@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Noralf =?utf-8?Q?Tr=C3=B8nnes?= Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, thomas.petazzoni-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-Id: devicetree@vger.kernel.org --EuxKj2iCbKjpUGkD Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jan 31, 2017 at 05:03:19PM +0100, Noralf Tr=C3=B8nnes wrote: > Add driver to support the Multi-Inno MI0283QT display panel. > It has an ILI9341 MIPI DBI compatible display controller. So what exactly does this entail? What if we ever see a second panel that has one of these controllers? Would it end up duplicating a lot of the code from this driver? Or would we be able to reuse the driver by just adding a different compatible string and parameterizing some more? > Signed-off-by: Noralf Tr=C3=B8nnes > --- > MAINTAINERS | 6 + > drivers/gpu/drm/tinydrm/Kconfig | 8 ++ > drivers/gpu/drm/tinydrm/Makefile | 3 + > drivers/gpu/drm/tinydrm/mi0283qt.c | 279 +++++++++++++++++++++++++++++++= ++++++ > include/drm/tinydrm/ili9341.h | 54 +++++++ > 5 files changed, 350 insertions(+) > create mode 100644 drivers/gpu/drm/tinydrm/mi0283qt.c > create mode 100644 include/drm/tinydrm/ili9341.h >=20 > diff --git a/MAINTAINERS b/MAINTAINERS > index d935135..5c4666b 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -4278,6 +4278,12 @@ S: Supported > F: drivers/gpu/drm/mediatek/ > F: Documentation/devicetree/bindings/display/mediatek/ > =20 > +DRM DRIVER FOR MI0283QT > +M: Noralf Tr=C3=B8nnes > +S: Maintained > +F: drivers/gpu/drm/tinydrm/mi0283qt.c > +F: Documentation/devicetree/bindings/display/multi-inno,mi0283qt.txt > + > DRM DRIVER FOR MSM ADRENO GPU > M: Rob Clark > L: linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org > diff --git a/drivers/gpu/drm/tinydrm/Kconfig b/drivers/gpu/drm/tinydrm/Kc= onfig > index 128d2f3..d3161fd 100644 > --- a/drivers/gpu/drm/tinydrm/Kconfig > +++ b/drivers/gpu/drm/tinydrm/Kconfig > @@ -9,3 +9,11 @@ menuconfig DRM_TINYDRM > =20 > config TINYDRM_MIPI_DBI > tristate > + > +config TINYDRM_MI0283QT > + tristate "DRM support for MI0283QT" > + depends on DRM_TINYDRM && SPI > + select TINYDRM_MIPI_DBI > + help > + DRM driver for the Multi-Inno MI0283QT display panel > + If M is selected the module will be called mi0283qt. > diff --git a/drivers/gpu/drm/tinydrm/Makefile b/drivers/gpu/drm/tinydrm/M= akefile > index fe5d4c6..7a3604c 100644 > --- a/drivers/gpu/drm/tinydrm/Makefile > +++ b/drivers/gpu/drm/tinydrm/Makefile > @@ -2,3 +2,6 @@ obj-$(CONFIG_DRM_TINYDRM) +=3D core/ > =20 > # Controllers > obj-$(CONFIG_TINYDRM_MIPI_DBI) +=3D mipi-dbi.o > + > +# Displays > +obj-$(CONFIG_TINYDRM_MI0283QT) +=3D mi0283qt.o > diff --git a/drivers/gpu/drm/tinydrm/mi0283qt.c b/drivers/gpu/drm/tinydrm= /mi0283qt.c > new file mode 100644 > index 0000000..b29fe86 > --- /dev/null > +++ b/drivers/gpu/drm/tinydrm/mi0283qt.c > @@ -0,0 +1,279 @@ > +/* > + * DRM driver for Multi-Inno MI0283QT panels > + * > + * Copyright 2016 Noralf Tr=C3=B8nnes > + * > + * This program is free software; you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation; either version 2 of the License, or > + * (at your option) any later version. > + */ > + > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include > +#include