[RFC] drm: add overlays as first class KMS objects

Jesse Barnes jbarnes at virtuousgeek.org
Mon Apr 25 16:22:16 PDT 2011

On Mon, 25 Apr 2011 16:16:18 -0700
Keith Packard <keithp at keithp.com> wrote:

> On Mon, 25 Apr 2011 15:12:20 -0700, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> > Overlays are a bit like half-CRTCs.  They have a location and fb, but
> > don't drive outputs directly.  Add support for handling them to the core
> > KMS code.
> Are overlays/underlays not associated with a specific CRTC? To my mind,
> overlays are another scanout buffer associated with a specific CRTC, so
> you'd create a scanout buffer and attach that to a specific scanout slot
> in a crtc, with the 'default' slot being the usual graphics plane.

Yes, that matches my understanding as well.  I've deliberately made the
implementation flexible there though, under the assumption that some
hardware allows a plane to be directed at more than one CRTC (though
probably not simultaneously).

Arguably, this is something we should have done when the
connector/encoder split was done (making planes in general first class
objects).  But with today's code, treating a CRTC as a pixel pump and a
primary plane seems fine, with overlays tacked onto the side as
secondary pixel sources but tied to a specific CRTC.

Jesse Barnes, Intel Open Source Technology Center

More information about the dri-devel mailing list