vmwlegacy: Fix up default mode VRefresh anc Clock calculation
authorThomas Hellstrom <thellstrom@vmware.com>
Wed, 30 Mar 2011 10:22:43 +0000 (12:22 +0200)
committerThomas Hellstrom <thellstrom@vmware.com>
Wed, 30 Mar 2011 12:22:54 +0000 (14:22 +0200)
The VRefresh value was a factor 1000 too high.
Calculate clock based on vrefresh and resolution.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Alan Hourihane <alanh@vmware.com>
src/vmwaremodes.c

index 5386b17..6df977d 100644 (file)
@@ -120,10 +120,6 @@ vmwareAddDefaultMode(ScrnInfoPtr pScrn, uint32 dwidth, uint32 dheight)
        dynamic.HSyncStart = dynamic.HDisplay + 1;
        dynamic.HSyncEnd = dynamic.HSyncStart + 1;
        dynamic.HTotal = dynamic.HSyncEnd * 5 / 4;
-       if (monitor->nHsync > 0)
-           dynamic.Clock = dynamic.HTotal * monitor->hsync[0].lo;
-       else
-           dynamic.Clock = 75000;
        dynamic.VDisplay = dheight;
        dynamic.VSyncStart = dynamic.VDisplay + 1;
        dynamic.VSyncEnd = dynamic.VSyncStart + 1;
@@ -131,8 +127,9 @@ vmwareAddDefaultMode(ScrnInfoPtr pScrn, uint32 dwidth, uint32 dheight)
        if (monitor->nVrefresh > 0)
            dynamic.VRefresh = monitor->vrefresh[0].lo;
        else
-           dynamic.VRefresh = 60000;
-
+           dynamic.VRefresh = 60;
+       dynamic.Clock = dynamic.VRefresh * dynamic.VTotal *
+           dynamic.HTotal / 1000;
        mode = xf86DuplicateMode(&dynamic);
        modes = xf86ModesAdd(modes, mode);
     }