From 28c006c94e57ea71df11ec4fff79d7ffcfc4860f Mon Sep 17 00:00:00 2001 From: Far McKon Date: Tue, 3 May 2011 20:59:04 +0300 Subject: [PATCH] Prevents omapfb from from crashing when pixelclock of 0 is sent to it. Due to a Linux design bug it is easy to get a pixelclock set to zero when changing displays at runtime. --- src/omapfb-output.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/omapfb-output.c b/src/omapfb-output.c index f8b4db3..4d59265 100644 --- a/src/omapfb-output.c +++ b/src/omapfb-output.c @@ -125,8 +125,13 @@ OMAPFBOutputGetModes(xf86OutputPtr output) /* Only populate the native (current) mode */ mode = calloc(1, sizeof(DisplayModeRec)); mode->type |= M_T_PREFERRED; - mode->Clock = PICOS2KHZ(ofb->state_info.pixclock); - mode->SynthClock = PICOS2KHZ(ofb->state_info.pixclock); + if (ofb->state_info.pixclock == 0) { + mode->Clock = 0; + mode->SynthClock = 0; + } else { + mode->Clock = PICOS2KHZ(ofb->state_info.pixclock); + mode->SynthClock = PICOS2KHZ(ofb->state_info.pixclock); + } mode->HDisplay = ofb->state_info.xres; mode->HSyncStart = mode->HDisplay + ofb->state_info.right_margin; -- 2.1.4