All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rob Clark <robdclark@gmail.com>
To: dri-devel@lists.freedesktop.org
Subject: [PATCH 00/13] Atomic Properties
Date: Tue, 16 Dec 2014 18:05:28 -0500	[thread overview]
Message-ID: <1418771141-16954-1-git-send-email-robdclark@gmail.com> (raw)

Now that we have core atomic helpers, let's expose that to userspace!
The first step here is to, for drivers supporting atomic, expose all
the core plane/CRTC/connector state as properties.  Once this is in
place, all that remains is the atomic ioctl to allow userspace to
atomically set a bunch of properties on a bunch of objects (RFC patch
at the end).

All of the core properties have their set/get/check's handled  by the
drm_atomic core, so drivers needn't be bothered about that.

NOTE: that there is one notable omission here.  The 'MODE' property
on the CRTC.  Without this, you can do atomic pageflip but not yet
atomic modeset.  I am debating between three paths for handling MODE:

 1) Add back blob property support to atomic ioctl
 2) Add ioctls to create/destroy blob properties, and then simply
    pass blob property id to atomic ioctl.
 3) Stick our head in the sands and expose mode as a bunch of descrete
    properties.

Of these, at the moment I prefer #2, since it is more consistent with
how userspace currently reads blob properties, and it avoids making the
atomic ioctl function even more gnarly.

The whole patchset can also be found at:

 http://cgit.freedesktop.org/~robclark/linux/log/?h=atomic-properties
 git://people.freedesktop.org/~robclark/linux atomic-properties

Rob Clark (13):
  drm: allow property validation for refcnted props
  drm: store property instead of id in obj attachment
  drm: get rid of direct property value access
  drm: add atomic_set_property wrappers
  drm: add atomic_get_property
  drm: add atomic hook to read property plus helper
  drm: small property creation cleanup
  drm: tweak getconnector locking
  drm/atomic: atomic_check functions
  drm/atomic: atomic plane properties
  drm/atomic: atomic connector properties
  drm/msm: atomic property support
  RFC: drm: Atomic modeset ioctl

 Documentation/DocBook/drm.tmpl                     |  83 ++-
 drivers/gpu/drm/drm_atomic.c                       | 613 +++++++++++++++++++++
 drivers/gpu/drm/drm_atomic_helper.c                | 105 +++-
 drivers/gpu/drm/drm_crtc.c                         | 230 ++++++--
 drivers/gpu/drm/drm_ioctl.c                        |   1 +
 drivers/gpu/drm/msm/hdmi/hdmi_connector.c          |   1 +
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_crtc.c           |   1 +
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_lvds_connector.c |   1 +
 drivers/gpu/drm/msm/mdp/mdp4/mdp4_plane.c          |   1 +
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_crtc.c           |   1 +
 drivers/gpu/drm/msm/mdp/mdp5/mdp5_plane.c          |   2 +
 drivers/gpu/drm/msm/msm_drv.c                      |   1 +
 include/drm/drm_atomic.h                           |  22 +
 include/drm/drm_atomic_helper.h                    |   2 +
 include/drm/drm_crtc.h                             |  50 +-
 include/uapi/drm/drm.h                             |   1 +
 include/uapi/drm/drm_mode.h                        |  21 +
 17 files changed, 1063 insertions(+), 73 deletions(-)

-- 
2.1.0

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

             reply	other threads:[~2014-12-16 23:05 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-12-16 23:05 Rob Clark [this message]
2014-12-16 23:05 ` [PATCH 01/13] drm: allow property validation for refcnted props Rob Clark
2014-12-17 12:31   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 02/13] drm: store property instead of id in obj attachment Rob Clark
2014-12-17 13:29   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 03/13] drm: get rid of direct property value access Rob Clark
2014-12-17 13:37   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 04/13] drm: add atomic_set_property wrappers Rob Clark
2014-12-17 12:49   ` Sean Paul
2014-12-17 13:43   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 05/13] drm: add atomic_get_property Rob Clark
2014-12-17 12:52   ` Sean Paul
2014-12-17 13:54   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 06/13] drm: add atomic hook to read property plus helper Rob Clark
2014-12-17 14:02   ` Daniel Vetter
2014-12-17 14:06     ` Daniel Vetter
2014-12-17 14:15       ` Rob Clark
2014-12-17 14:29         ` Daniel Vetter
2014-12-17 14:12     ` Rob Clark
2014-12-17 14:32       ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 07/13] drm: small property creation cleanup Rob Clark
2014-12-17 14:13   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 08/13] drm: tweak getconnector locking Rob Clark
2014-12-17 14:14   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 09/13] drm/atomic: atomic_check functions Rob Clark
2014-12-17 14:25   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 10/13] drm/atomic: atomic plane properties Rob Clark
2014-12-17 14:41   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 11/13] drm/atomic: atomic connector properties Rob Clark
2014-12-17 14:48   ` Daniel Vetter
2014-12-16 23:05 ` [PATCH 12/13] drm/msm: atomic property support Rob Clark
2014-12-16 23:05 ` [PATCH 13/13] RFC: drm: Atomic modeset ioctl Rob Clark
2014-12-17  2:48   ` Michel Dänzer
2014-12-17  7:20     ` Pekka Paalanen
2014-12-17  9:31       ` Michel Dänzer
2014-12-17 11:18         ` Daniel Vetter
2014-12-19  3:29           ` Michel Dänzer
2014-12-19  7:55             ` Daniel Vetter
2014-12-17 14:04         ` Rob Clark
2014-12-17 15:04   ` Daniel Vetter
2014-12-17 13:08 ` [PATCH 00/13] Atomic Properties Sean Paul

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=1418771141-16954-1-git-send-email-robdclark@gmail.com \
    --to=robdclark@gmail.com \
    --cc=dri-devel@lists.freedesktop.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 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.