summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@guitar.keithp.com>2006-12-21 23:42:53 -0800
committerKeith Packard <keithp@guitar.keithp.com>2006-12-21 23:42:53 -0800
commit84915ac8afeb4bbc03df8f94ab3ba351788d6501 (patch)
treebb33ef74e582d77468dc2b5f50e074987fddd560
parent1e9105395a7900521206b28bae4bb4f85669a0cd (diff)
If DDC detailed modes are missing physical size, pull from features.
Monitors without detailed modes, or those which do not bother to set a physical size in their detailed modes may still have physical size in the global data.
-rw-r--r--src/i830_modes.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/i830_modes.c b/src/i830_modes.c
index 34f6cd52..42ee79df 100644
--- a/src/i830_modes.c
+++ b/src/i830_modes.c
@@ -140,5 +140,13 @@ i830_ddc_get_modes(xf86OutputPtr output)
}
}
+ /* if no mm size is available from a detailed timing, check the max size field */
+ if ((!output->mm_width || !output->mm_height) &&
+ (ddc_mon->features.hsize && ddc_mon->features.vsize))
+ {
+ output->mm_width = ddc_mon->features.hsize * 10;
+ output->mm_height = ddc_mon->features.vsize * 10;
+ }
+
return ddc_modes;
}