summaryrefslogtreecommitdiff
path: root/src/g80_driver.c
diff options
context:
space:
mode:
authorAaron Plattner <aplattner@nvidia.com>2008-07-24 18:03:31 -0700
committerAaron Plattner <aplattner@nvidia.com>2008-07-24 18:03:31 -0700
commit9b727b8384d51e3657bb50efa090adde91c17a73 (patch)
tree95c04ef8d50b7485772d06132b4bc62c1f037350 /src/g80_driver.c
parent6cd80057fadbb8d63d3e1a623515206800fefc8e (diff)
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.
Diffstat (limited to 'src/g80_driver.c')
-rw-r--r--src/g80_driver.c14
1 files changed, 7 insertions, 7 deletions
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;