diff options
author | Ian Romanick <idr@us.ibm.com> | 2008-04-11 14:22:07 -0700 |
---|---|---|
committer | Ian Romanick <idr@us.ibm.com> | 2008-04-11 14:22:07 -0700 |
commit | f4dfb7ba1ae01ce1b401536328fee348322b8423 (patch) | |
tree | 7c3a63b039fe05d5b90e26ac3d8386e13fbb2c55 | |
parent | 044583037a109894f43ccb9a0b9c9e95266d004a (diff) |
Load required modules and symbols from XGISetup
-rw-r--r-- | src/xgi_driver.c | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/xgi_driver.c b/src/xgi_driver.c index bf0d253..ce45c69 100644 --- a/src/xgi_driver.c +++ b/src/xgi_driver.c @@ -398,7 +398,22 @@ static pointer XGISetup(pointer module, */ isInited = TRUE; xf86AddDriver(&XGI, module, 1); - LoaderRefSymLists(vgahwSymbols, fbSymbols, i2cSymbols, ramdacSymbols, + + if (!LoadSubModule(module, "fb", NULL, NULL, NULL, NULL, + NULL, NULL)) { + return NULL; + } + + if (!LoadSubModule(module, "vgahw", NULL, NULL, NULL, NULL, + NULL, NULL)) { + return NULL; + } + + LoaderReqSymLists(vgahwSymbols, fbSymbols, driSymbols, drmSymbols, + NULL); + + + LoaderRefSymLists(i2cSymbols, ramdacSymbols, xaaSymbols, shadowSymbols, fbdevHWSymbols, NULL); /* @@ -1322,11 +1337,6 @@ static Bool XGIPreInitModes(ScrnInfoPtr pScrn) /* Set the DPI */ xf86SetDpi(pScrn, 0, 0); - /* Get ScreenInit function */ - mod = "fb"; - if (mod && !xf86LoadSubModule(pScrn, mod)) return FALSE; - xf86LoaderReqSymLists(fbSymbols, NULL); - #if DBG_FLOW xf86DrvMsg(pScrn->scrnIndex, X_INFO, "-- Leave %s() %s:%d\n", __FUNCTION__, __FILE__, __LINE__); #endif @@ -1680,9 +1690,6 @@ Bool XGIPreInit(ScrnInfoPtr pScrn, int flags) return TRUE; } - if (!xf86LoadSubModule(pScrn, "vgahw")) return FALSE; - xf86LoaderReqSymLists(vgahwSymbols, NULL); - if (!vgaHWGetHWRec(pScrn)) { XGIFreeRec(pScrn); @@ -2001,8 +2008,6 @@ Bool XGIScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) XGITRACE(("XGIScreenInit %x %d\n", pScrn->memPhysBase, pScrn->fbOffset)); - xf86LoaderReqSymLists(driSymbols, drmSymbols, NULL); - pXGI->directRenderingEnabled = XGIDRIScreenInit(pScreen); if (!pXGI->directRenderingEnabled) { goto fail; |