From: Maxime Ripard <maxime.ripard-wi1+55ScJUtKEb57/3fJTNBPR1lH4CV8@public.gmane.org>
To: Laurent Pinchart
<laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org>
Cc: dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
Jean-Francois Moine <moinejf-GANU6spQydw@public.gmane.org>,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org,
Rob Herring <robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org>,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org
Subject: Re: [PATCH v7 0/8] drm: sun8i: Add DE2 HDMI video support
Date: Thu, 1 Dec 2016 10:13:13 +0100 [thread overview]
Message-ID: <20161201091313.th7nucjmvtuolqza@lukather> (raw)
In-Reply-To: <2039137.LtCOH6bs2I@avalon>
[-- Attachment #1: Type: text/plain, Size: 3730 bytes --]
Hi Laurent,
On Wed, Nov 30, 2016 at 12:12:55PM +0200, Laurent Pinchart wrote:
> > More, it is not sure that the bridge/DW code would work with Allwinner's
> > SoCs.
>
> If it doesn't work and can't be made to work in a non-invasive way they it
> should certainly not be used :-)
Even if the register layout is completely scrambled, as long as the
bits themselves aren't (and by comparing the two drivers it looks like
they haven't changed), you can easily deal with that using the
regmap_fields, with the two implementations (the original one and the
scrambled one) providing their register map that way, and the driver
code using whatever has been provided.
> > Eventually, I went the same way as omap/hdmi5: different driver.
>
> I might try to fix that for OMAP5 at some point, we'll see.
For complex drivers that have already a driver written and a lot of
testing that already happened, I don't think duplication is a smart
move.
> > > - And finally the fact that we can't have several display engine in
> > > parallel, if needs be. This has happened in the past already on
> > > Allwinner SoCs, so it's definitely something we should consider in
> > > the DT bindings, since we can't break them.
> >
> > IIRC, I proposed my driver before yours, and the DE2 is completely
> > different from the other display engines.
> > What you are telling is "add more code to already complex code and have
> > a big driver for all SoCs in each kernels".
> > I think it should be better to have small modules, each one treating
> > specific hardware, and to let only the needed code in the kernel memory
> > at startup time.
> >
> > > Until those are fixed, I cannot see how this driver can be merged,
> > > unfortunately.
> >
> > No problem. I just wanted to help people by giving the job I did on the
> > boards I have. My boards are working for almost one year, fine enough
> > for I use them as daily desktop computers. I don't want to spend one
> > more year for having my code in the Linux kernel: there are so much
> > other exciting things to do...
>
> And you're certainly welcome to contribute drivers to the kernel, that's
> always appreciated. Of course, to ensure a reasonable level of quality and
> consistency between drivers, the review process often requires changes to be
> made to the code being submitted. When it comes to drivers I mostly pay
> attention to DT bindings, userspace APIs and modification to common code.
> Driver code itself, as long as it's reasonably clean and doesn't impede
> development of other drivers or impact system security in an adverse way, is
> still important but maybe slightly less so. I'll defer to Maxime to come to an
> agreement on the multiple display engines in parallel problem as I'm not
> familiar with it for the Allwinner platforms.
The earlier Allwinner SoCs (with the old display engine), we had some
SoCs with multiple instances of the display engine and TCON (the
display engine roughly implementing the planes, the TCON the
CRTC. Roughly.). However, those were sharing some encoders (HDMI,
DSI) after that.
So we need to have a single DRM device taking care of the multiple
display engines, which essentialy means that we have to decouple the
DRM device from the display engine. This was done in the earlier
designs using an additional node with a list of phandles to the
display engines in the system, and obviously, I'd prefer to have some
consistency and reuse the same thing.
But the current approach doesn't work and will require some DT
modifications if that case happens again, which we can't do because of
the DT ABI.
Maxime
--
Maxime Ripard, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
next prev parent reply other threads:[~2016-12-01 9:13 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-29 10:18 [PATCH v7 0/8] drm: sun8i: Add DE2 HDMI video support Jean-Francois Moine
[not found] ` <cover.1480414715.git.moinejf-GANU6spQydw@public.gmane.org>
2016-11-28 14:23 ` [PATCH v7 1/8] drm: sun8i: Add a basic DRM driver for Allwinner DE2 Jean-Francois Moine
[not found] ` <592a49a2d9505fc0f09b555847892fb7a4047530.1480414715.git.moinejf-GANU6spQydw@public.gmane.org>
2016-11-29 14:30 ` Daniel Vetter
[not found] ` <20161129143051.vn6exubsirwcauag-dv86pmgwkMBes7Z6vYuT8azUEOm+Xw19@public.gmane.org>
2016-11-29 14:33 ` Icenowy Zheng
2016-11-28 18:02 ` [PATCH v7 2/8] drm/sun8i: Add DT bindings documentation of " Jean-Francois Moine
[not found] ` <92fc53084274d5ab04fe28f2dc0b16cf5d94481e.1480414715.git.moinejf-GANU6spQydw@public.gmane.org>
2016-11-29 18:41 ` Laurent Pinchart
2016-11-29 18:45 ` Laurent Pinchart
2016-11-29 8:39 ` [PATCH v7 3/8] drm: sun8i: add HDMI video support to A83T and H3 Jean-Francois Moine
2016-11-29 9:08 ` [PATCH v7 4/8] drm/sunxi: Add DT bindings documentation of Allwinner HDMI Jean-Francois Moine
[not found] ` <cd1caff75b6069af98680f78d672546748cb43c5.1480414715.git.moinejf-GANU6spQydw@public.gmane.org>
2016-11-29 18:46 ` Laurent Pinchart
2016-11-29 19:27 ` Jean-Francois Moine
[not found] ` <20161129202751.e94f72a1b9e2c2fb064e9933-GANU6spQydw@public.gmane.org>
2016-11-29 19:33 ` Laurent Pinchart
2016-11-29 20:04 ` Jean-Francois Moine
[not found] ` <20161129210455.d0c8450d3ceb83c1abe521b0-GANU6spQydw@public.gmane.org>
2016-11-29 20:10 ` Laurent Pinchart
2016-11-30 8:12 ` Jean-Francois Moine
[not found] ` <20161130091208.f38cd79f1cc5d27b27f3b130-GANU6spQydw@public.gmane.org>
2016-11-30 8:20 ` Laurent Pinchart
2016-11-30 9:27 ` Jean-Francois Moine
[not found] ` <20161130102757.9eec1f7f3377d0f4787e3829-GANU6spQydw@public.gmane.org>
2016-11-30 9:52 ` Laurent Pinchart
2016-11-30 10:44 ` Jean-Francois Moine
[not found] ` <20161130114415.2280151e2965280733a629e5-GANU6spQydw@public.gmane.org>
2016-11-30 17:33 ` Icenowy Zheng
[not found] ` <1971681480527210-RAIFsGP/6J5uio3avFS2gg@public.gmane.org>
2016-12-01 8:55 ` Maxime Ripard
2016-12-01 10:41 ` Laurent Pinchart
2016-12-01 11:30 ` Jean-Francois Moine
[not found] ` <20161201123009.d2b4d9d389070200c54138ee-GANU6spQydw@public.gmane.org>
2016-12-01 11:44 ` Laurent Pinchart
2016-11-30 17:24 ` Icenowy Zheng
2016-11-29 10:10 ` [PATCH v7 5/8] clk: sunxi-ng: define the PLL DE clock Jean-Francois Moine
2016-11-29 10:12 ` [PATCH v7 6/8] ARM: dts: sun8i-h3: add HDMI video nodes Jean-Francois Moine
2016-11-29 10:14 ` [PATCH v7 7/8] ARM: dts: sun8i-h3: Add HDMI video to the Banana Pi M2+ Jean-Francois Moine
2016-11-29 10:16 ` [PATCH v7 8/8] ARM: dts: sun8i-h3: Add HDMI video to the Orange PI 2 Jean-Francois Moine
2016-11-29 21:36 ` [PATCH v7 0/8] drm: sun8i: Add DE2 HDMI video support Maxime Ripard
2016-11-29 22:47 ` Jernej Skrabec
[not found] ` <8398357e-5c5e-4d76-9022-1c668aff5076-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2016-11-29 22:56 ` Laurent Pinchart
2016-11-29 23:24 ` Jernej Skrabec
[not found] ` <239b60f3-3ea7-4aa7-8e8d-353e1a1d4ee5-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2016-11-30 8:08 ` Laurent Pinchart
2016-11-30 18:04 ` Jernej Skrabec
2016-11-30 9:05 ` Jean-Francois Moine
[not found] ` <20161130100545.44546ed28896cdb9768f68cd-GANU6spQydw@public.gmane.org>
2016-11-30 10:12 ` Laurent Pinchart
2016-12-01 9:13 ` Maxime Ripard [this message]
2016-12-01 9:19 ` Laurent Pinchart
2016-12-01 9:42 ` Maxime Ripard
2016-12-01 9:28 ` How should we group related devices in DT ? (was Re: [PATCH v7 0/8] drm: sun8i: Add DE2 HDMI video support) Laurent Pinchart
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20161201091313.th7nucjmvtuolqza@lukather \
--to=maxime.ripard-wi1+55scjutkeb57/3fjtnbpr1lh4cv8@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
--cc=laurent.pinchart-ryLnwIuWjnjg/C1BVhZhaw@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org \
--cc=moinejf-GANU6spQydw@public.gmane.org \
--cc=robh+dt-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox