[Intel-gfx] [PATCH i-g-t v3 00/33] lib/igt_kms: Implement dynamic plane count support

Robert Foss robert.foss at collabora.com
Mon Jan 30 14:11:51 UTC 2017


This series implements dynamic plane count support in lib/igt_kms and modifies
all of the tests that rely on a static plane count.

Currently it has has gone through incomplete testing on vc4 (many tests are intel only)
and intel (on intel-ci).

This series can be found in the branch dyn_n_planes_$VERSION on:
https://git.collabora.com/cgit/user/robertfoss/intel-gpu-tools.git/


Changes since v2:
 Rebased on upstream/master
 Added "Reviewed-by: Mika Kahola <mika.kahola at intel.com>" to all patches

 * igt_kms:
   - Fixed misaligned bracket
 * kms_fbc_crc:
   - Harmonize variable name with the rest of series

 * kms_plane:
   - Fixed misaligned function argument

 * kms_plane_multiple:
   - Increased size of memory allocations
   - Switched malloc to calloc
   - test_fini() skip planes that are NULL
   - test_fini() set free'd plane pointers to NULL
   - test_fini() fix off-by-one in induction variable
   - prepare_planes() make if-else statement more legible

Changes since v1:
 Rebased on upstream/master

 * igt_kms:
  - Added back kmstest_pipe_to_index() declaration
  - Fixed kmstest_plane_type_name() comment
  - Split up dyn n_planes implementation into a an additive part
    and a subtractive part to make sure that all tests work at all times
  - Fixed two igt_assert_f's that tested the wrong variable
  - Added igt_assert_f to verify that plane->index never is >= n_planes
    during igt_display_init()

 * kms_plane_multiple:
   - Fix printf cast of size_t varibles


Changes since rfc:
 Rebased on upstream/master

 * igt_debugfs:
  - Change read to read at most MAX_LINE_LEN

 * igt_kms:
  - Actually fix typo
  - Removed unused function declaration
  - Set free'd pointer to NULL after free
  - Check allocations for failures
  - Rework kmstest_crtc and kmstest_plane to support dyn n_planes

 * kms_cursor_legacy:
  - Added support for dyn n_planes

 * kms_cursor_legacy:
  - Switch to using for_each_pipe construct

 * kms_plane_lowres:
  - Added support for dyn n_planes

 * kms_plane_multiple:
  - Set free'd pointer to NULL after free
  - Check allocations for failures

Robert Foss (33):
  lib/igt_kms: Add index property to kmstest_plane struct
  lib/igt_kms: Avoid depencency on static plane count
  lib/igt_kms: Rename kmstest properties nplanes and plane
  lib/igt_kms: Implement dynamic plane count support
  tests/kms_atomic_transition: Add support for dynamic number of planes
  tests/kms_busy: Add support for dynamic number of planes
  tests/kms_chv_cursor_fail: Add support for dynamic number of planes
  tests/kms_crtc_background_color: Add support for dynamic number of
    planes
  tests/kms_cursor_crc: Add support for dynamic number of planes
  tests/kms_cursor_legacy: Add support for dynamic number of planes
  tests/kms_fbc_crc: Add support for dynamic number of planes
  tests/kms_fence_pin_leak: Add support for dynamic number of planes
  tests/kms_flip_event_leak: Add support for dynamic number of planes
  tests/kms_legacy_colorkey: Add support for dynamic number of planes
  tests/kms_mmap_write_crc: Add support for dynamic number of planes
  tests/kms_mmio_vs_cs_flip: Add support for dynamic number of planes
  tests/kms_panel_fitting: Add support for dynamic number of planes
  tests/kms_pipe_color: Add support for dynamic number of planes
  tests/kms_plane: Add support for dynamic number of planes
  tests/kms_plane_multiple: Add support for dynamic number of planes
  tests/kms_plane_scaling: Add support for dynamic number of planes
  tests/kms_properties: Add support for dynamic number of planes
  tests/kms_psr_sink_crc: Add support for dynamic number of planes
  tests/kms_pwrite_crc: Add support for dynamic number of planes
  tests/kms_rmfb: Add support for dynamic number of planes
  tests/kms_rotation_crc: Add support for dynamic number of planes
  tests/kms_sink_crc_basic: Add support for dynamic number of planes
  tests/kms_universal_plane: Add support for dynamic number of planes
  tests/kms_vblank: Add support for dynamic number of planes
  tests/prime_mmap_kms: Add support for dynamic number of planes
  tests/kms_ccs: Add support for dynamic number of planes
  tests/kms_plane_lowres: Add support for dynamic number of planes
  lib/igt_kms: Remove code obsoleted by dyn n_planes implementation

 lib/igt_kms.c                     | 215 +++++++++++++++++++++++------------
 lib/igt_kms.h                     |  40 +++----
 tests/kms_atomic_transition.c     |  27 +++--
 tests/kms_busy.c                  |   6 +-
 tests/kms_ccs.c                   |   4 +-
 tests/kms_chv_cursor_fail.c       |   6 +-
 tests/kms_crtc_background_color.c |   2 +-
 tests/kms_cursor_crc.c            |  12 +-
 tests/kms_cursor_legacy.c         |  32 +++---
 tests/kms_fbc_crc.c               |   9 +-
 tests/kms_fence_pin_leak.c        |   2 +-
 tests/kms_flip_event_leak.c       |   2 +-
 tests/kms_legacy_colorkey.c       |   4 +-
 tests/kms_mmap_write_crc.c        |   2 +-
 tests/kms_mmio_vs_cs_flip.c       |   6 +-
 tests/kms_panel_fitting.c         |  16 +--
 tests/kms_pipe_color.c            |   4 +-
 tests/kms_plane.c                 |  96 +++++++++-------
 tests/kms_plane_lowres.c          |  35 ++++--
 tests/kms_plane_multiple.c        | 232 ++++++++++++++++++++++++--------------
 tests/kms_plane_scaling.c         |  14 +--
 tests/kms_properties.c            |   6 +-
 tests/kms_psr_sink_crc.c          |  52 ++++-----
 tests/kms_pwrite_crc.c            |   2 +-
 tests/kms_rmfb.c                  |   2 +-
 tests/kms_rotation_crc.c          |  63 ++++++-----
 tests/kms_sink_crc_basic.c        |   2 +-
 tests/kms_universal_plane.c       |  18 +--
 tests/kms_vblank.c                |   4 +-
 tests/prime_mmap_kms.c            |   2 +-
 30 files changed, 529 insertions(+), 388 deletions(-)

-- 
2.11.0.453.g787f75f05



More information about the Intel-gfx mailing list