summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas White <taw@bitwiz.org.uk>2010-03-08 23:17:28 +0100
committerThomas White <taw@bitwiz.org.uk>2010-03-08 23:17:28 +0100
commit77b6d1b7363d3ff28f063ed92c9ed47194f70b20 (patch)
tree86b777fdb0d3d9b87c2add0c23c9afdcde6881a3
parentc9b0bd77ea232b8ccd6cdabf25b0686d83bcb3a4 (diff)
Translate KMS pixel clock values -> X values
There's a factor of 1000 difference, which seems to confuse X and prevent switching of resolution without general carnage.
-rw-r--r--src/glamo-kms-crtc.c2
-rw-r--r--src/glamo-kms-output.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/glamo-kms-crtc.c b/src/glamo-kms-crtc.c
index fdf0e9f..e00c41e 100644
--- a/src/glamo-kms-crtc.c
+++ b/src/glamo-kms-crtc.c
@@ -119,7 +119,7 @@ static void crtc_mode_set(xf86CrtcPtr crtc, DisplayModePtr mode,
drmModeCrtcPtr drm_crtc = crtcp->drm_crtc;
drmModeModeInfo drm_mode;
- drm_mode.clock = mode->Clock;
+ drm_mode.clock = mode->Clock * 1000.0;
drm_mode.hdisplay = mode->HDisplay;
drm_mode.hsync_start = mode->HSyncStart;
drm_mode.hsync_end = mode->HSyncEnd;
diff --git a/src/glamo-kms-output.c b/src/glamo-kms-output.c
index 7b9f997..1f67eb0 100644
--- a/src/glamo-kms-output.c
+++ b/src/glamo-kms-output.c
@@ -152,7 +152,7 @@ static DisplayModePtr get_modes(xf86OutputPtr output)
if (!mode)
continue;
mode->type = 0;
- mode->Clock = drm_mode->clock;
+ mode->Clock = drm_mode->clock / 1000.0;
mode->HDisplay = drm_mode->hdisplay;
mode->HSyncStart = drm_mode->hsync_start;
mode->HSyncEnd = drm_mode->hsync_end;