summaryrefslogtreecommitdiff
path: root/src/mga_driver.c
diff options
context:
space:
mode:
authorAdam Jackson <ajax@nwnk.net>2004-07-30 20:30:52 +0000
committerAdam Jackson <ajax@nwnk.net>2004-07-30 20:30:52 +0000
commitdd173d29d2c2bd73bea8eef018b1c6dd6b7a967c (patch)
treefcb6ff7b31b14ed6a4c04b1a7f21db98472bf0b5 /src/mga_driver.c
parente12aa54892259cdfef7c0f9419b58f0b9d4163d7 (diff)
Bug #400 (partial): Driver fixes for the dlloader. When using dlloader, all
framebuffer formats except cfb and the overlay modes should work, and r128 and radeon need to be loaded from the ati driver (both issues to be fixed soon). Tested on i740, s3virge, mach64, tdfx, vesa, and vga drivers. elfloader users shouldn't be affected.
Diffstat (limited to 'src/mga_driver.c')
-rw-r--r--src/mga_driver.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/mga_driver.c b/src/mga_driver.c
index c6e2c07..d0bc9b2 100644
--- a/src/mga_driver.c
+++ b/src/mga_driver.c
@@ -267,7 +267,7 @@ static const char *xaaSymbols[] = {
"XAACachePlanarMonoStipple",
"XAACreateInfoRec",
"XAADestroyInfoRec",
- "XAAFallbackOps",
+ "XAAGetFallbackOps",
"XAAInit",
"XAAMoveDWORDS",
"XAA_888_plus_PICT_a8_to_8888",
@@ -1029,7 +1029,7 @@ MGAdoDDC(ScrnInfoPtr pScrn)
return NULL;
} else {
/* XXX Need to write an MGA mode ddc1SetSpeed */
- if (pMga->DDC1SetSpeed == vgaHWddc1SetSpeed) {
+ if (pMga->DDC1SetSpeed == LoaderSymbol("vgaHWddc1SetSpeed")) {
pMga->DDC1SetSpeed = NULL;
xf86DrvMsgVerb(pScrn->scrnIndex, X_INFO, 2,
"DDC1 disabled - chip not in VGA mode\n");
@@ -1692,11 +1692,11 @@ MGAPreInit(ScrnInfoPtr pScrn, int flags)
xf86LoaderReqSymLists(fbdevHWSymbols, NULL);
if (!fbdevHWInit(pScrn, pMga->PciInfo, NULL))
return FALSE;
- pScrn->SwitchMode = fbdevHWSwitchMode;
- pScrn->AdjustFrame = fbdevHWAdjustFrame;
+ pScrn->SwitchMode = LoaderSymbol("fbdevHWSwitchMode");
+ pScrn->AdjustFrame = LoaderSymbol("fbdevHWAdjustFrame");
pScrn->EnterVT = MGAEnterVTFBDev;
- pScrn->LeaveVT = fbdevHWLeaveVT;
- pScrn->ValidMode = fbdevHWValidMode;
+ pScrn->LeaveVT = LoaderSymbol("fbdevHWLeaveVT");
+ pScrn->ValidMode = LoaderSymbol("fbdevHWValidMode");
}
pMga->Rotate = 0;
if ((s = xf86GetOptValString(pMga->Options, OPTION_ROTATE))) {
@@ -3428,7 +3428,8 @@ MGAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
else
f = CMAP_RELOAD_ON_MODE_SWITCH;
if(!xf86HandleColormaps(pScreen, 256, 8,
- (pMga->FBDev ? fbdevHWLoadPalette : MGAdac->LoadPalette), NULL, f))
+ pMga->FBDev ? LoaderSymbol("fbdevHWLoadPalette") : MGAdac->LoadPalette,
+ NULL, f))
return FALSE;
if(pMga->Overlay8Plus24) { /* Must come after colormap initialization */