summaryrefslogtreecommitdiff
path: root/src
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
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')
-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;