small fixes, but still can't get this driver woking again

This commit is contained in:
Franco Catrin L 2004-04-05 18:19:34 +00:00
parent b526276faa
commit 07bc231872
2 changed files with 23 additions and 19 deletions

View File

@ -19,24 +19,6 @@ backendInitialize(KdCardInfo *card, BackendInfo *backend)
{ {
Bool success = FALSE; Bool success = FALSE;
#ifdef KDRIVEFBDEV
if (!success && fbdevInitialize(card, &backend->priv.fbdev)) {
success = TRUE;
backend->type = FBDEV;
backend->cardfini = fbdevCardFini;
backend->scrfini = fbdevScreenFini;
backend->initScreen = fbdevInitScreen;
backend->finishInitScreen = fbdevFinishInitScreen;
backend->createRes = fbdevCreateResources;
backend->preserve = fbdevPreserve;
backend->restore = fbdevRestore;
backend->dpms = fbdevDPMS;
backend->enable = fbdevEnable;
backend->disable = fbdevDisable;
backend->getColors = fbdevGetColors;
backend->putColors = fbdevPutColors;
}
#endif
#ifdef KDRIVEVESA #ifdef KDRIVEVESA
if (!success && vesaInitialize(card, &backend->priv.vesa)) { if (!success && vesaInitialize(card, &backend->priv.vesa)) {
success = TRUE; success = TRUE;
@ -54,6 +36,24 @@ backendInitialize(KdCardInfo *card, BackendInfo *backend)
backend->getColors = vesaGetColors; backend->getColors = vesaGetColors;
backend->putColors = vesaPutColors; backend->putColors = vesaPutColors;
} }
#endif
#ifdef KDRIVEFBDEV
if (!success && fbdevInitialize(card, &backend->priv.fbdev)) {
success = TRUE;
backend->type = FBDEV;
backend->cardfini = fbdevCardFini;
backend->scrfini = fbdevScreenFini;
backend->initScreen = fbdevInitScreen;
backend->finishInitScreen = fbdevFinishInitScreen;
backend->createRes = fbdevCreateResources;
backend->preserve = fbdevPreserve;
backend->restore = fbdevRestore;
backend->dpms = fbdevDPMS;
backend->enable = fbdevEnable;
backend->disable = fbdevDisable;
backend->getColors = fbdevGetColors;
backend->putColors = fbdevPutColors;
}
#endif #endif
return success; return success;
} }
@ -75,6 +75,7 @@ backendScreenInitialize(KdScreenInfo *screen, BackendScreen *backendScreen,
#endif #endif
#ifdef KDRIVEVESA #ifdef KDRIVEVESA
if (backendCard->type == VESA) { if (backendCard->type == VESA) {
screen->card->driver = &backendCard->priv.vesa;
if (screen->fb[0].depth == 0) { if (screen->fb[0].depth == 0) {
screen->fb[0].depth = 16; screen->fb[0].depth = 16;
} }

View File

@ -98,7 +98,8 @@ neoScreenInit(KdScreenInfo *screen)
return FALSE; return FALSE;
} }
screen->driver = neos; memset (neos, '\0', sizeof (NeoScreenInfo));
if(!backendScreenInitialize(screen, &neos->backendScreen, &neoc->backendCard)) { if(!backendScreenInitialize(screen, &neos->backendScreen, &neoc->backendCard)) {
xfree(neos); xfree(neos);
@ -136,6 +137,8 @@ neoScreenInit(KdScreenInfo *screen)
neos->off_screen_size = 0; neos->off_screen_size = 0;
} }
screen->driver = neos;
LEAVE(); LEAVE();
return TRUE; return TRUE;
} }