From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com (mga03.intel.com [134.134.136.65]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8FD7310F111 for ; Tue, 28 Jun 2022 13:29:05 +0000 (UTC) From: Nidhi Gupta To: igt-dev@lists.freedesktop.org Date: Tue, 28 Jun 2022 19:02:20 +0530 Message-Id: <20220628133220.26100-3-nidhi1.gupta@intel.com> In-Reply-To: <20220628133220.26100-1-nidhi1.gupta@intel.com> References: <20220628133220.26100-1-nidhi1.gupta@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [PATCH i-g-t 2/2] tests/kms_invalid_mode: Test Cleanup List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Nidhi Gupta Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: Sanitize the system state before starting the subtest. Signed-off-by: Nidhi Gupta --- tests/kms_invalid_mode.c | 37 +++++++++++++------------------------ 1 file changed, 13 insertions(+), 24 deletions(-) diff --git a/tests/kms_invalid_mode.c b/tests/kms_invalid_mode.c index 0287ee02..0926d129 100644 --- a/tests/kms_invalid_mode.c +++ b/tests/kms_invalid_mode.c @@ -35,7 +35,6 @@ struct _data { enum pipe pipe; igt_display_t display; igt_output_t *output; - drmModeResPtr res; int max_dotclock; bool (*adjust_mode)(data_t *data, drmModeModeInfoPtr mode); }; @@ -182,35 +181,28 @@ static void test_output(data_t *data) { igt_output_t *output = data->output; - drmModeModeInfo mode; struct igt_fb fb; - int ret; - uint32_t crtc_id; + drmModeConnector *connector = output->config.connector; - /* - * FIXME test every mode we have to be more - * sure everything is really getting rejected? - */ - mode = *igt_output_get_mode(output); - igt_require(data->adjust_mode(data, &mode)); + igt_output_set_pipe(output, data->pipe); - igt_create_fb(data->drm_fd, - max_t(uint16_t, mode.hdisplay, 64), - max_t(uint16_t, mode.vdisplay, 64), - DRM_FORMAT_XRGB8888, + igt_create_fb(data->drm_fd, 512, 512, DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR, &fb); - kmstest_unset_all_crtcs(data->drm_fd, data->res); + igt_sort_connector_modes(connector, sort_drm_modes_by_res_dsc); - crtc_id = data->display.pipes[data->pipe].crtc_id; - - ret = drmModeSetCrtc(data->drm_fd, crtc_id, - fb.fb_id, 0, 0, - &output->id, 1, &mode); - igt_assert_lt(ret, 0); + for_each_connector_mode(output) { + igt_require(data->adjust_mode(data, &connector->modes[j__])); + igt_output_override_mode(output, &connector->modes[j__]); + igt_display_commit2(&data->display, data->display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); + } igt_remove_fb(data->drm_fd, &fb); + igt_output_override_mode(output, NULL); + /*unset_all_crtcs*/ + igt_display_reset(&data->display); + igt_display_commit(&data->display); } static int i915_max_dotclock(data_t *data) @@ -290,8 +282,6 @@ igt_main kmstest_set_vt_graphics_mode(); igt_display_require(&data.display, data.drm_fd); - data.res = drmModeGetResources(data.drm_fd); - igt_assert(data.res); data.max_dotclock = i915_max_dotclock(&data); igt_info("Max dotclock: %d kHz\n", data.max_dotclock); @@ -314,6 +304,5 @@ igt_main igt_fixture { igt_display_fini(&data.display); igt_reset_connectors(); - drmModeFreeResources(data.res); } } -- 2.26.2