xf86-video-intel: src/sna/sna_display.c
Chris Wilson
ickle at kemper.freedesktop.org
Wed Mar 25 13:46:48 PDT 2015
src/sna/sna_display.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
New commits:
commit dbdcae9f8afb9964becd29200d7d6936e8269baa
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Wed Mar 25 20:44:01 2015 +0000
sna: Refresh properties even if we skip the detection probe
Properties may refresh quickly, more often than the output status
changes. We want to query the properties without doing a forced probe,
so make sure we refresh the values if the user requests a property.
Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
diff --git a/src/sna/sna_display.c b/src/sna/sna_display.c
index d9b9923..633133d 100644
--- a/src/sna/sna_display.c
+++ b/src/sna/sna_display.c
@@ -220,6 +220,7 @@ struct sna_output {
uint32_t last_detect;
uint32_t status;
+ bool update_properties;
int num_modes;
struct drm_mode_modeinfo *modes;
@@ -2988,6 +2989,7 @@ sna_output_detect(xf86OutputPtr output)
uint32_t now;
DBG(("%s(%s:%d)\n", __FUNCTION__, output->name, sna_output->id));
+ sna_output->update_properties = false;
if (!sna_output->id) {
DBG(("%s(%s) hiding due to lost connection\n", __FUNCTION__, output->name));
@@ -3001,6 +3003,7 @@ sna_output_detect(xf86OutputPtr output)
DBG(("%s(%s) reporting cached status (since %dms): %d\n",
__FUNCTION__, output->name, now - sna_output->last_detect,
sna_output->status));
+ sna_output->update_properties = true;
return sna_output->status;
}
@@ -3675,6 +3678,7 @@ static void update_properties(struct sna *sna, struct sna_output *output)
&compat_conn.conn);
assert(compat_conn.conn.count_props == output->num_props);
+ output->update_properties = false;
}
static Bool
@@ -3719,7 +3723,7 @@ sna_output_get_property(xf86OutputPtr output, Atom property)
if (p->atoms == NULL || p->atoms[0] != property)
continue;
- if (0&&output->scrn->vtSema)
+ if (sna_output->update_properties && output->scrn->vtSema)
update_properties(to_sna(output->scrn), sna_output);
err = 0;
More information about the xorg-commit
mailing list