[Intel-gfx] [PATCH i-g-t v2 00/14] lib/igt_kms: Rewrite property handling to better match atomic.

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Thu Oct 12 11:54:21 UTC 2017


The future is atomic!

Currently when we add new properties, each one requires new API to be added,
even though the core wouldn't have to know anything about it. This can easily
be fixed by making everything a property, and having the core functions handle
some properties like fb and position separately.

Even with this in place it still makes sense to allow direct control of
properties, so add some new API to allow this manipulation. How powerful it is
can be seen in kms_atomic, which can finally be rewritten to use the new api.

We also extend the legacy paths to handle custom properties, so any tests
aren't required to use the atomic api.

Changes since v1:
- Small fixes to chamelium compilation. Patchwork messed up so resending all.

Maarten Lankhorst (14):
  lib/igt_kms: Rework connector properties to be more atomic, v2.
  lib/igt_kms: Rework plane properties to be more atomic, v5.
  lib/igt_kms: Rework pipe properties to be more atomic, v7.
  lib/igt_kms: Allow setting any plane property through the universal
    path
  lib/igt_kms: Allow setting any output property through the !atomic
    paths
  lib/igt_kms: Export property blob functions for output/pipe/plane, v2.
  lib/igt_kms: Unexport broadcast rgb API.
  lib/igt_kms: Add igt_$obj_has_prop functions
  lib/igt_kms: Add igt_$obj_get_prop functions
  lib/igt_kms: Remove igt_pipe_get_property
  lib/igt_kms: Remove igt_crtc_set_background()
  tests/kms_color: Rework tests slightly to work better with new atomic
    api
  tests/chamelium: Remove reliance on output->config.pipe
  tests/kms_atomic: Convert/rewrite tests to use igt_kms framework

 lib/igt_kms.c                     |  897 +++++++++++---------
 lib/igt_kms.h                     |  267 +++---
 tests/chamelium.c                 |   26 +-
 tests/kms_atomic.c                | 1668 ++++++++++++-------------------------
 tests/kms_atomic_interruptible.c  |   24 +-
 tests/kms_atomic_transition.c     |    2 +-
 tests/kms_color.c                 |  229 ++---
 tests/kms_crtc_background_color.c |   20 +-
 tests/kms_panel_fitting.c         |    2 +-
 tests/kms_rotation_crc.c          |   10 +-
 10 files changed, 1303 insertions(+), 1842 deletions(-)

-- 
2.14.1



More information about the Intel-gfx mailing list