From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga06.intel.com (mga06b.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9FE2E10E044 for ; Tue, 15 Nov 2022 17:10:01 +0000 (UTC) From: Bhanuprakash Modem To: igt-dev@lists.freedesktop.org Date: Tue, 15 Nov 2022 22:38:06 +0530 Message-Id: <20221115170855.196572-4-bhanuprakash.modem@intel.com> In-Reply-To: <20221115170855.196572-1-bhanuprakash.modem@intel.com> References: <20221115170855.196572-1-bhanuprakash.modem@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [i-g-t v5 03/52] tests/kms_async_flips: Add support for Bigjoiner List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: This patch will add a check to Skip the subtest if a selected pipe/output combo won't support Bigjoiner or 8K mode. Example: * Pipe-D wont support a mode > 5K * To use 8K mode on a pipe then consecutive pipe must be available & free. V2: - Use updated helper name Signed-off-by: Bhanuprakash Modem --- tests/kms_async_flips.c | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/tests/kms_async_flips.c b/tests/kms_async_flips.c index 7cb71f6b..674fcb5a 100644 --- a/tests/kms_async_flips.c +++ b/tests/kms_async_flips.c @@ -330,15 +330,6 @@ static void test_cursor(data_t *data) struct igt_fb cursor_fb; struct drm_mode_cursor cur; - /* - * Intel's PSR2 selective fetch adds other planes to state when - * necessary, causing the async flip to fail because async flip is not - * supported in cursor plane. - */ - igt_skip_on_f(i915_psr2_selective_fetch_check(data->drm_fd), - "PSR2 sel fetch causes cursor to be added to primary plane " \ - "pages flips and async flip is not supported in cursor\n"); - do_or_die(drmGetCap(data->drm_fd, DRM_CAP_CURSOR_WIDTH, &width)); do_or_die(drmGetCap(data->drm_fd, DRM_CAP_CURSOR_WIDTH, &height)); @@ -380,12 +371,12 @@ static void test_invalid(data_t *data) struct igt_fb fb; drmModeModeInfo *mode; + test_init(data); + mode = igt_output_get_mode(data->output); width = mode->hdisplay; height = mode->vdisplay; - test_init(data); - igt_create_fb(data->drm_fd, width, height, DRM_FORMAT_XRGB8888, I915_FORMAT_MOD_Y_TILED, &fb); @@ -542,9 +533,16 @@ static void run_test(data_t *data, void (*test)(data_t *)) { igt_output_t *output; enum pipe pipe; + igt_display_t *display = &data->display; + + for_each_pipe(display, pipe) { + for_each_valid_output_on_pipe(display, pipe, output) { + igt_display_reset(display); + + igt_output_set_pipe(output, pipe); + if (!i915_pipe_output_combo_valid(display)) + continue; - for_each_pipe(&data->display, pipe) { - for_each_valid_output_on_pipe(&data->display, pipe, output) { igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(pipe), output->name) { data->output = output; data->pipe = pipe; -- 2.38.0