Looks like my previous patch to bug #437066 was the real cause of bug
#452913.
The new patch (attached) copies values of bios_mode to fixed_mode,
instead of overwriting the latter.
--
Sergey Yanovich
diff --git a/src/i830_lvds.c b/src/i830_lvds.c
index a3a56f7..76e55f7 100644
--- a/src/i830_lvds.c
+++ b/src/i830_lvds.c
@@ -926,6 +926,16 @@ i830_lvds_init(ScrnInfoPtr pScrn)
bios_mode = i830_bios_get_panel_mode(pScrn, &dev_priv->panel_wants_dither);
if (bios_mode != NULL) {
if (dev_priv->panel_fixed_mode != NULL) {
+ /* Fixup for a 1366x768 panel with the horizontal trimmed
+ * down to 1024 for text mode.
+ */
+ if (!xf86ModesEqual(dev_priv->panel_fixed_mode, bios_mode) &&
+ bios_mode->HDisplay == 1366)
+ {
+ memcpy(&dev_priv->panel_fixed_mode->Clock,
+ &bios_mode->Clock, sizeof(int)*12);
+ }
+
/* Fixup for a 1280x768 panel with the horizontal trimmed
* down to 1024 for text mode.
*/