summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPascal VITOUX <vitoux.pascal@gmail.com>2020-11-27 16:54:59 +0000
committerPovilas Kanapickas <povilas@radix.lt>2021-04-06 11:25:42 +0000
commit34e2a64ce00c219d64b8169b774661d5727c45c7 (patch)
tree69bf615c2a6d322109ab6be9d19be11c3ad16d4a
parentb75d0cca28aaae5cd21ad76ad2822138fac2882a (diff)
xfree86: fix gtf support detection for EDID 1.4
According to the "VESA Enhanced EDID Standard", all GTF compliant displays are continuous frequency. The GTF support flags in 'Display Range Limits Descriptor' cannot be used if the display is a non-continuous frequency multi-mode display. Closes #1105 Signed-off-by: Pascal VITOUX <vitoux.pascal@gmail.com> Fixes: 6a79a737 ("xfree86: add drm modes on non-GTF panels") Reviewed-by: Aaron Ma aaron.ma@canonical.com
-rw-r--r--hw/xfree86/ddc/interpret_edid.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/hw/xfree86/ddc/interpret_edid.c b/hw/xfree86/ddc/interpret_edid.c
index 19630471c..7259d2192 100644
--- a/hw/xfree86/ddc/interpret_edid.c
+++ b/hw/xfree86/ddc/interpret_edid.c
@@ -768,7 +768,7 @@ gtf_supported(xf86MonPtr mon)
} else {
for (i = 0; i < DET_TIMINGS; i++) {
struct detailed_monitor_section *det_timing_des = &(mon->det_mon[i]);
- if (det_timing_des && (det_timing_des->type == DS_RANGES) &&
+ if (det_timing_des && (det_timing_des->type == DS_RANGES) && (mon->features.msc & 0x1) &&
(det_timing_des->section.ranges.display_range_timing_flags == DR_DEFAULT_GTF
|| det_timing_des->section.ranges.display_range_timing_flags == DR_SECONDARY_GTF))
return TRUE;