From 9b727b8384d51e3657bb50efa090adde91c17a73 Mon Sep 17 00:00:00 2001 From: Aaron Plattner Date: Thu, 24 Jul 2008 18:03:31 -0700 Subject: Move hardware cursor initialization to after AcquireDisplay. The original order works fine when the server starts, but on the second server generation the server tries to call G80CrtcHideCursor before the display engine has been initialized, causing a hang. --- src/g80_driver.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/g80_driver.c') diff --git a/src/g80_driver.c b/src/g80_driver.c index a0182a1..50d55a0 100644 --- a/src/g80_driver.c +++ b/src/g80_driver.c @@ -914,13 +914,6 @@ G80ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) Must precede creation of the default colormap */ miDCInitialize(pScreen, xf86GetPointerScreenFuncs()); - /* Initialize hardware cursor. Must follow software cursor initialization. */ - if(pNv->HWCursor && !G80CursorInit(pScreen)) { - xf86DrvMsg(pScrn->scrnIndex, X_ERROR, - "Hardware cursor initialization failed\n"); - pNv->HWCursor = FALSE; - } - /* Initialize default colormap */ if(!miCreateDefColormap(pScreen)) return FALSE; @@ -949,6 +942,13 @@ G80ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) if(!AcquireDisplay(pScrn)) return FALSE; + /* Initialize hardware cursor. Must follow software cursor initialization. */ + if(pNv->HWCursor && !G80CursorInit(pScreen)) { + xf86DrvMsg(pScrn->scrnIndex, X_ERROR, + "Hardware cursor initialization failed\n"); + pNv->HWCursor = FALSE; + } + pScreen->SaveScreen = G80SaveScreen; pNv->CloseScreen = pScreen->CloseScreen; -- cgit v1.2.3