All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@gmail.com>
To: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
Cc: "Thomas Hellstrom" <thellstrom@vmware.com>,
	"Russell King - ARM Linux" <linux@arm.linux.org.uk>,
	"Alison Wang" <alison.wang@freescale.com>,
	dri-devel@lists.freedesktop.org,
	"Tomi Valkeinen" <tomi.valkeinen@ti.com>,
	"Laurent Pinchart" <laurent.pinchart@ideasonboard.com>,
	"Benjamin Gaignard" <benjamin.gaignard@linaro.org>,
	"Alex Deucher" <alexander.deucher@amd.com>,
	"Daniel Vetter" <daniel.vetter@intel.com>,
	"Christian König" <christian.koenig@amd.com>,
	"Ben Skeggs" <bskeggs@redhat.com>
Subject: Re: [PATCH 09/16] drm/irq: Use unsigned int pipe in public API
Date: Fri, 25 Sep 2015 14:26:36 +0200	[thread overview]
Message-ID: <20150925122636.GB30567@ulmo> (raw)
In-Reply-To: <20150924202054.GI26517@intel.com>


[-- Attachment #1.1: Type: text/plain, Size: 3051 bytes --]

On Thu, Sep 24, 2015 at 11:20:54PM +0300, Ville Syrjälä wrote:
> On Thu, Sep 24, 2015 at 08:21:53PM +0100, Russell King - ARM Linux wrote:
> > On Thu, Sep 24, 2015 at 06:35:31PM +0200, Thierry Reding wrote:
> > > This continues the pattern started in commit cc1ef118fc09 ("drm/irq:
> > > Make pipe unsigned and name consistent"). This is applied to the public
> > > APIs and driver callbacks, so pretty much all drivers need to be updated
> > > to match the new prototypes.
> > 
> > I don't like being forced to use the "pipe" naming in all drivers; I
> > found that really confusing when I first looked at DRM, and it took
> > a long time to work out that "pipe" basically means "crtc" or "gpu".
> 
> crtc mean "cathode ray tube controller". If you weren't used to it,
> it would be pretty much impossible to guess what piece of modern
> hardware that means. So I think it's more a case of "a lot of this
> junk used to be in what people called the crtc, so we'll call
> this modern thing a crtc too". Although I think most of the
> hardware people moved on from using that name quite a long time ago.
> 
> "gpu" can mean either just the part that does the rendering and 
> whatnot, or it can mean the entire graphics "card". But calling
> a display pipeline a "gpu" is not done. Now _that_ would be
> confusing.
> 
> "pipe" is fairly nice term, meaning "pipeline". That describes the
> thing quite nicely. Stuff comes in from one end, flows through the
> pipe, and goes out the other end.
> 
> At least both Intel and OMAP used the term pipe or pipeline in the
> hardware docs. Can't really say aything about other brands, at least
> if I discount the more ancient junk I'm familiar with.
> 
> > What's wrong with keeping "crtc" as the index terminology for crtc
> > things?  Surely that's more descriptive of what's going on here?
> 
> I can't speak for Thierry, but I assume the real motivation for this
> renaming was to make it clear which is the "index", and which is the
> crtc object. "pipe" for one, "crtc" for the other. Avoids having
> to call the object "dcrtc", "drm_crtc" or something else entirely.
> And since the object is called "crtc" everywhere else, it's nice not
> to have to make an exception in the vblank code.

Exactly this. I find it to be very confusing to read through drivers and
see completely inconsistent naming for what's really the same thing. The
list isn't limited to "pipe", "crtc" or "index". There are others that
use "head" or "crtc_id". The latter in particular is very confusing
because, at least in most of the cases I've seen, it refers to the pipe
rather than the CRTC object ID.

That said this is all only temporary, though it may take us a while to
get rid of it. The ultimate goal is to convert all drivers over to using
struct drm_crtc * everywhere, at which point we don't have to bother
with what to call the CRTC index. As a preliminary step, having drivers
use consistent naming is hopefully going to make it easier to replace.

Thierry

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

[-- Attachment #2: Type: text/plain, Size: 159 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

  parent reply	other threads:[~2015-09-25 12:26 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-24 16:35 [PATCH 01/16] drm/gma500: Sanity-check pipe index Thierry Reding
2015-09-24 16:35 ` [PATCH 02/16] drm/bochs: Store correct CRTC index in events Thierry Reding
2015-09-24 16:35 ` [PATCH 03/16] drm/imx: Make pipe number unsigned Thierry Reding
2015-09-24 16:35 ` [PATCH 04/16] drm/imx: Drop pipe field from struct imx_drm_crtc Thierry Reding
2015-09-25  7:26   ` Philipp Zabel
2015-09-24 16:35 ` [PATCH 05/16] drm/imx: Store correct CRTC index in events Thierry Reding
2015-09-24 16:35 ` [PATCH 06/16] drm/rockchip: " Thierry Reding
2015-09-24 16:35 ` [PATCH 07/16] drm/sti: " Thierry Reding
2015-10-01 14:06   ` Vincent ABRIOU
2015-09-24 16:35 ` [PATCH 08/16] drm/irq: Rename drm_crtc -> crtc Thierry Reding
2015-09-24 18:17   ` Daniel Vetter
2015-09-24 16:35 ` [PATCH 09/16] drm/irq: Use unsigned int pipe in public API Thierry Reding
2015-09-24 19:21   ` Russell King - ARM Linux
2015-09-24 20:20     ` Ville Syrjälä
2015-09-25  7:39       ` Laurent Pinchart
2015-09-25 12:26       ` Thierry Reding [this message]
2015-10-01 14:46   ` Vincent ABRIOU
2015-10-06 10:52   ` Ville Syrjälä
2015-09-24 16:35 ` [PATCH 10/16] drm/gma500: Use unsigned int pipe consistently Thierry Reding
2015-09-24 16:35 ` [PATCH 11/16] drm/imx: Use unsigned int for CRTC index Thierry Reding
2015-09-24 16:35 ` [PATCH 12/16] drm/msm: Use unsigned int pipe consistently Thierry Reding
2015-09-24 16:35 ` [PATCH 13/16] drm: Move ->get_scanout_position() to struct drm_crtc_funcs Thierry Reding
2015-09-24 18:22   ` Daniel Vetter
2015-09-24 16:35 ` [PATCH 14/16] drm/irq: Add drm_crtc_vblank_count_and_time() Thierry Reding
2015-09-24 18:27   ` Daniel Vetter
2015-09-24 16:35 ` [PATCH 15/16] drm/armada: Use drm_crtc_vblank_*() API Thierry Reding
2015-09-24 16:35 ` [PATCH 16/16] drm/sti: " Thierry Reding
2015-10-01 14:49   ` Vincent ABRIOU

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=20150925122636.GB30567@ulmo \
    --to=thierry.reding@gmail.com \
    --cc=alexander.deucher@amd.com \
    --cc=alison.wang@freescale.com \
    --cc=benjamin.gaignard@linaro.org \
    --cc=bskeggs@redhat.com \
    --cc=christian.koenig@amd.com \
    --cc=daniel.vetter@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux@arm.linux.org.uk \
    --cc=thellstrom@vmware.com \
    --cc=tomi.valkeinen@ti.com \
    --cc=ville.syrjala@linux.intel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.