From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by gabe.freedesktop.org (Postfix) with ESMTPS id 15C626E37C for ; Mon, 20 Jul 2020 11:49:00 +0000 (UTC) From: Mohammed Khajapasha Date: Mon, 20 Jul 2020 17:18:45 +0530 Message-Id: <20200720114856.31432-1-mohammed.khajapasha@intel.com> MIME-Version: 1.0 Subject: [igt-dev] [PATCH i-g-t 00/11] lib/igt_kms: Add support for display with List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" To: arkadiusz.hiler@intel.com, igt-dev@lists.freedesktop.org List-ID: With non-contiguous pipes display, pipe mapping is always not same as crtc mapping, For i915 pipe is enum id of i915's crtc object and it is not equal to crtc offset of a pipe in mode config list. Hence allocating upper bound array for igt_pipe and reading pipe id using GET_PIPE_FROM_CRTC_ID ioctl. Using crtc offset for a pipe to do ordering pipe with crtc list. Example: With a non-contiguous pipe display, with PIPE_A & PIPE_D are enabled, PIPE_C & PIPE_B disabled configuration, the pipe for PIPE_A & D will be '0' and '3' and crtc offsets are '0' & '1' in mode config list using crtc offset to ordering enabled pipes with crtc list in mode config. v9: Modified documentation as per review comments by Mohammed Khajapasha (11): lib/igt_kms: Add support for display with non-contiguous pipes lib/igt_kms: Add igt_require_pipe() function tests/kms_cursor_legacy: Read crtc id for enable pipes tests/kms_lease: Get pipe from crtc for enable pipes tests/kms_lease: Read crtc id for a valid pipe lib/kms: Skip igt test cases for disabled display pipes tests/kms: Skip kms test cases for disabled pipes tests/kms_atomic_transition: Set modeset for enable pipes only i915/gem_eio: Set modeset for enable pipes lib/kms: Convert pipe id flags for a vblank using crtc offset tests/kms: Use crtc offset to read vblank event for a pipe lib/igt_kms.c | 140 +++++++++++++++++++++++++++------- lib/igt_kms.h | 43 +++++++++-- tests/i915/gem_eio.c | 2 + tests/kms_atomic_transition.c | 9 ++- tests/kms_color.c | 2 +- tests/kms_color_chamelium.c | 2 +- tests/kms_concurrent.c | 2 +- tests/kms_cursor_crc.c | 18 +++-- tests/kms_cursor_legacy.c | 13 ++-- tests/kms_lease.c | 10 ++- tests/kms_pipe_crc_basic.c | 4 +- tests/kms_plane.c | 2 +- tests/kms_plane_lowres.c | 2 +- tests/kms_plane_multiple.c | 2 +- tests/kms_universal_plane.c | 12 +-- 15 files changed, 197 insertions(+), 66 deletions(-) -- 2.24.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev