From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 01393C2BA18 for ; Tue, 18 Jun 2024 06:29:59 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 99BD110E589; Tue, 18 Jun 2024 06:29:59 +0000 (UTC) Authentication-Results: gabe.freedesktop.org; dkim=pass (2048-bit key; unprotected) header.d=intel.com header.i=@intel.com header.b="FayVMNXD"; dkim-atps=neutral Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.11]) by gabe.freedesktop.org (Postfix) with ESMTPS id 3951510E586 for ; Tue, 18 Jun 2024 06:29:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1718692198; x=1750228198; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=HBY1AWRv6/gQbWQfksW6Yu3YnoaKgW0EcGIw5qK08qU=; b=FayVMNXD+j1RiIdRFawKdD0dSZcuNQ9+mpqCQsUEMpOU1WRXHUN/b8h2 W5avQGqDvkcG0G76/RNKe1QRzQVjTi79xlGiV0MX4oevhUpYKrXfbTeGg /GxMAt9h6OkmgYD0Nwymw8UchTe+PlC9mjKWVeBfPs6bnMIBNiPPcdOxV OU0obcXiAlxLLb8+qivVCSqFW9JxV1j3WMw4homNR872RAMHsfs01iSkz kl8bConnNxXmiz4UX5WeiBSW0NxMdF9BDrXLakMkIfYlQY8UsQyZ1Svpy LzqT8Sa3gSbd7BDAV1vW6HkWO6T79PWgA8j1HHg8zufMKgrNyOco3zTsk w==; X-CSE-ConnectionGUID: tzXC5LkfRtGYRi662n2Z/A== X-CSE-MsgGUID: KDPwxWmmRB+M5F623AikiA== X-IronPort-AV: E=McAfee;i="6700,10204,11106"; a="26177411" X-IronPort-AV: E=Sophos;i="6.08,247,1712646000"; d="scan'208";a="26177411" Received: from orviesa010.jf.intel.com ([10.64.159.150]) by fmvoesa105.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jun 2024 23:29:58 -0700 X-CSE-ConnectionGUID: RJDsxiYXQbGrCr0iRofldg== X-CSE-MsgGUID: o09iWAqrRx66hfR6Adk7yQ== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.08,247,1712646000"; d="scan'208";a="41360337" Received: from bhanu-nuclab.iind.intel.com ([10.145.169.172]) by orviesa010-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Jun 2024 23:29:58 -0700 From: Bhanuprakash Modem To: igt-dev@lists.freedesktop.org Cc: Bhanuprakash Modem , Jeevan B Subject: [i-g-t V6 6/6] tests/kms_hdr: Use lib helper to check the pipe/output combo validity Date: Tue, 18 Jun 2024 11:51:50 +0530 Message-ID: <20240618062150.4004768-7-bhanuprakash.modem@intel.com> X-Mailer: git-send-email 2.43.2 In-Reply-To: <20240618062150.4004768-1-bhanuprakash.modem@intel.com> References: <20240618062150.4004768-1-bhanuprakash.modem@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: igt-dev@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Development mailing list for IGT GPU Tools List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" Use IGT lib helper intel_pipe_output_combo_valid() to make sure the selected pipe/output/mode combo is valid. Cc: Jeevan B Signed-off-by: Bhanuprakash Modem --- tests/kms_hdr.c | 90 ++++++++++++++++++++++++++++--------------------- 1 file changed, 51 insertions(+), 39 deletions(-) diff --git a/tests/kms_hdr.c b/tests/kms_hdr.c index 99b78f7ef..475463c21 100644 --- a/tests/kms_hdr.c +++ b/tests/kms_hdr.c @@ -261,6 +261,8 @@ static void test_bpc_switch(data_t *data, uint32_t flags) igt_display_t *display = &data->display; igt_output_t *output; + igt_display_reset(display); + for_each_connected_output(display, output) { enum pipe pipe; @@ -271,26 +273,30 @@ static void test_bpc_switch(data_t *data, uint32_t flags) continue; for_each_pipe(display, pipe) { - if (igt_pipe_connector_valid(pipe, output)) { - prepare_test(data, output, pipe); - - if (is_intel_device(data->fd) && - !igt_max_bpc_constraint(display, pipe, output, 10)) { - test_fini(data); - break; - } - - data->mode = igt_output_get_mode(output); - data->w = data->mode->hdisplay; - data->h = data->mode->vdisplay; + igt_output_set_pipe(output, pipe); + if (intel_pipe_output_combo_valid(display)) { + igt_output_set_pipe(output, PIPE_NONE); + continue; + } - igt_dynamic_f("pipe-%s-%s", - kmstest_pipe_name(pipe), output->name) - test_bpc_switch_on_output(data, pipe, output, flags); + prepare_test(data, output, pipe); - /* One pipe is enough */ + if (is_intel_device(data->fd) && + !igt_max_bpc_constraint(display, pipe, output, 10)) { + test_fini(data); break; } + + data->mode = igt_output_get_mode(output); + data->w = data->mode->hdisplay; + data->h = data->mode->vdisplay; + + igt_dynamic_f("pipe-%s-%s", + kmstest_pipe_name(pipe), output->name) + test_bpc_switch_on_output(data, pipe, output, flags); + + /* One pipe is enough */ + break; } } } @@ -614,6 +620,8 @@ static void test_hdr(data_t *data, uint32_t flags) igt_display_t *display = &data->display; igt_output_t *output; + igt_display_reset(display); + for_each_connected_output(display, output) { enum pipe pipe; @@ -635,32 +643,36 @@ static void test_hdr(data_t *data, uint32_t flags) continue; for_each_pipe(display, pipe) { - if (igt_pipe_connector_valid(pipe, output)) { - prepare_test(data, output, pipe); + igt_output_set_pipe(output, pipe); + if (!intel_pipe_output_combo_valid(display)) { + igt_output_set_pipe(output, PIPE_NONE); + continue; + } - if (is_intel_device(data->fd) && - !igt_max_bpc_constraint(display, pipe, output, 10)) { - test_fini(data); - break; - } - - data->mode = igt_output_get_mode(output); - data->w = data->mode->hdisplay; - data->h = data->mode->vdisplay; - - igt_dynamic_f("pipe-%s-%s", - kmstest_pipe_name(pipe), output->name) { - if (flags & (TEST_NONE | TEST_DPMS | TEST_SUSPEND | TEST_INVALID_HDR)) - test_static_toggle(data, pipe, output, flags); - if (flags & TEST_SWAP) - test_static_swap(data, pipe, output); - if (flags & TEST_INVALID_METADATA_SIZES) - test_invalid_metadata_sizes(data, output); - } - - /* One pipe is enough */ + prepare_test(data, output, pipe); + + if (is_intel_device(data->fd) && + !igt_max_bpc_constraint(display, pipe, output, 10)) { + test_fini(data); break; } + + data->mode = igt_output_get_mode(output); + data->w = data->mode->hdisplay; + data->h = data->mode->vdisplay; + + igt_dynamic_f("pipe-%s-%s", + kmstest_pipe_name(pipe), output->name) { + if (flags & (TEST_NONE | TEST_DPMS | TEST_SUSPEND | TEST_INVALID_HDR)) + test_static_toggle(data, pipe, output, flags); + if (flags & TEST_SWAP) + test_static_swap(data, pipe, output); + if (flags & TEST_INVALID_METADATA_SIZES) + test_invalid_metadata_sizes(data, output); + } + + /* One pipe is enough */ + break; } } } -- 2.43.2