diff options
-rw-r--r-- | src/via_driver.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/src/via_driver.c b/src/via_driver.c index 5cfb337..b900f80 100644 --- a/src/via_driver.c +++ b/src/via_driver.c @@ -1985,16 +1985,18 @@ ViaMapFB(ScrnInfoPtr pScrn) "Framebuffer: No Direct CPU access possible.\n"); #ifdef XSERVER_LIBPCIACCESS - if (pci_device_map_range(pVia->PciInfo, pVia->FrameBufferBase, - pVia->videoRambytes, - PCI_DEV_MAP_FLAG_WRITABLE | PCI_DEV_MAP_FLAG_WRITE_COMBINE, - (pointer *) &pVia->FBBase)) - pVia->FBBase = NULL; + if (pci_device_map_range(pVia->PciInfo, pVia->FrameBufferBase, + pVia->videoRambytes, + PCI_DEV_MAP_FLAG_WRITABLE | PCI_DEV_MAP_FLAG_WRITE_COMBINE, + (pointer *) &pVia->FBBase)) + pVia->FBBase = NULL; #else + ViaBrokenMTRRHack(pScrn); pVia->FBBase = xf86MapPciMem(pScrn->scrnIndex, VIDMEM_FRAMEBUFFER, pVia->PciTag, pVia->FrameBufferBase, pVia->videoRambytes); #endif + if (!pVia->FBBase) { xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Internal error: could not map framebuffer\n"); @@ -2122,9 +2124,6 @@ VIAScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv) VIAFUNC(scrnIndex); -#ifndef XSERVER_LIBPCIACCESS - ViaBrokenMTRRHack(pScrn); -#endif if (!VIAMapMMIO(pScrn)) return FALSE; |