All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brian Starkey <brian.starkey@arm.com>
To: intel-gfx@lists.freedesktop.org
Cc: liviu.dudau@arm.com
Subject: [PATCH i-g-t 2/7] lib/igt_kms: Fix override_mode handling
Date: Tue, 25 Apr 2017 17:45:08 +0100	[thread overview]
Message-ID: <1493138713-2319-3-git-send-email-brian.starkey@arm.com> (raw)
In-Reply-To: <1493138713-2319-1-git-send-email-brian.starkey@arm.com>

igt_display_commit isn't refreshing all outputs anymore, which means
that an override mode may never get picked up.

Instead of forcing a reprobe to handle copying the override_mode into
default_mode, just change igt_output_get_mode() to return the
override_mode if it's been set, and remove the old code which would
directly overwrite default_mode.

This should be more robust, as igt_output_get_mode() will always return
the correct mode, without needing the output to be reprobed.

This change means that output->config.default_mode always contains the
"non-overridden" default mode.

Signed-off-by: Brian Starkey <brian.starkey@arm.com>
---
 lib/igt_kms.c |   12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 5837a9f112a6..474aa005b9fa 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1575,9 +1575,6 @@ static void igt_output_refresh(igt_output_t *output)
 		igt_atomic_fill_connector_props(display, output,
 			IGT_NUM_CONNECTOR_PROPS, igt_connector_prop_names);
 
-	if (output->use_override_mode)
-		output->config.default_mode = output->override_mode;
-
 	if (output->config.pipe == PIPE_NONE)
 		return;
 
@@ -2816,7 +2813,10 @@ const char *igt_output_name(igt_output_t *output)
 
 drmModeModeInfo *igt_output_get_mode(igt_output_t *output)
 {
-	return &output->config.default_mode;
+	if (output->use_override_mode)
+		return &output->override_mode;
+	else
+		return &output->config.default_mode;
 }
 
 /**
@@ -2834,10 +2834,6 @@ void igt_output_override_mode(igt_output_t *output, drmModeModeInfo *mode)
 
 	if (mode)
 		output->override_mode = *mode;
-	else /* restore default_mode, may have been overwritten in igt_output_refresh */
-		kmstest_get_connector_default_mode(output->display->drm_fd,
-						   output->config.connector,
-						   &output->config.default_mode);
 
 	output->use_override_mode = !!mode;
 
-- 
1.7.9.5

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  parent reply	other threads:[~2017-04-25 16:45 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-25 16:45 [PATCH i-g-t 0/7] Misc fixes and cleanup Brian Starkey
2017-04-25 16:45 ` [PATCH i-g-t RESEND 1/7] lib/igt_kms: Fix erroneous assert Brian Starkey
2017-04-25 16:45 ` Brian Starkey [this message]
2017-04-25 16:45 ` [PATCH i-g-t 3/7] lib: Stop igt_get_all_cairo_formats memory leak Brian Starkey
2017-04-25 17:43   ` Gabriel Krisman Bertazi
2017-04-25 19:29     ` Brian Starkey
2017-04-25 16:45 ` [PATCH i-g-t 4/7] lib/igt_debugfs: Remove igt_debugfs_t Brian Starkey
2017-04-25 16:45 ` [PATCH i-g-t 5/7] lib/igt_debugfs: Only use valid values in igt_crc_to_str() Brian Starkey
2017-04-25 16:45 ` [PATCH i-g-t 6/7] igt: lib/igt_crc: Split out CRC functionality Brian Starkey
2017-04-25 16:45 ` [PATCH i-g-t 7/7] lib/igt_kms: Use kernel command line mode if specified Brian Starkey
2017-04-25 16:58   ` Ville Syrjälä
2017-04-25 17:06     ` Brian Starkey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1493138713-2319-3-git-send-email-brian.starkey@arm.com \
    --to=brian.starkey@arm.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=liviu.dudau@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.