diff -p -up xserver-xorg-video-psb-0.31.0/libmm/mm_drm.c.assert xserver-xorg-video-psb-0.31.0/libmm/mm_drm.c --- xserver-xorg-video-psb-0.31.0/libmm/mm_drm.c.assert 2010-04-26 13:40:50.000000000 +0200 +++ xserver-xorg-video-psb-0.31.0/libmm/mm_drm.c 2010-04-26 13:48:28.000000000 +0200 --- xserver-xorg-video-psb-0.31.0/src/psb_crtc.c.randr 2009-05-11 20:37:53.000000000 -0500 +++ xserver-xorg-video-psb-0.31.0/src/psb_crtc.c 2010-11-30 22:50:43.000000000 -0500 @@ -431,7 +431,9 @@ if (bPlaneBEnabled) { //current mode dot clock, HZ - DotClockB = output->crtc->mode.Clock * 1000 / WM_DOTCLOCK_DIVISOR; + if( output->crtc ){ + DotClockB = output->crtc->mode.Clock * 1000 / WM_DOTCLOCK_DIVISOR; + } BPPB = output->scrn->bitsPerPixel; } } @@ -440,7 +442,9 @@ { if (bPlaneAEnabled) { - DotClockA = output->crtc->mode.Clock * 1000 / WM_DOTCLOCK_DIVISOR; + if( output->crtc ) { + DotClockA = output->crtc->mode.Clock * 1000 / WM_DOTCLOCK_DIVISOR; + } BPPA = output->scrn->bitsPerPixel; } }