xf86-video-intel: Branch 'modesetting' - src/i830_xf86Crtc.c
Keith Packard
keithp at kemper.freedesktop.org
Sun Dec 31 08:48:01 EET 2006
src/i830_xf86Crtc.c | 10 ++++++++++
1 files changed, 10 insertions(+)
New commits:
diff-tree 2330b341c925e60bc2c991b4ca8450badbc459a4 (from c70e7bc701cba3092acfdd66ed4d63487ac8ff9f)
Author: Keith Packard <keithp at neko.keithp.com>
Date: Sat Dec 30 22:47:58 2006 -0800
Prune default modes to EDID clock limit.
Pick out the EDID max clock value and use that to elide default modes which
are too fast.
diff --git a/src/i830_xf86Crtc.c b/src/i830_xf86Crtc.c
index 6e9e52a..91f6071 100644
--- a/src/i830_xf86Crtc.c
+++ b/src/i830_xf86Crtc.c
@@ -546,6 +546,8 @@ xf86ProbeOutputModes (ScrnInfoPtr pScrn)
XF86ConfMonitorPtr conf_monitor;
xf86MonPtr edid_monitor;
MonRec mon_rec;
+ int min_clock = 0;
+ int max_clock = 0;
enum { sync_config, sync_edid, sync_default } sync_source = sync_default;
while (output->probed_modes != NULL)
@@ -615,6 +617,8 @@ xf86ProbeOutputModes (ScrnInfoPtr pScrn)
if (sync_source == sync_default)
sync_source = sync_edid;
}
+ if (ranges->max_clock > max_clock)
+ max_clock = ranges->max_clock;
}
}
}
@@ -650,6 +654,12 @@ xf86ProbeOutputModes (ScrnInfoPtr pScrn)
* Check default modes against sync range
*/
i830xf86ValidateModesSync (pScrn, default_modes, &mon_rec);
+ /*
+ * Check default modes against monitor max clock
+ */
+ if (max_clock)
+ i830xf86ValidateModesClocks(pScrn, default_modes,
+ &min_clock, &max_clock, 1);
output->probed_modes = NULL;
output->probed_modes = xf86ModesAdd (output->probed_modes, config_modes);
More information about the xorg-commit
mailing list