On Tue, 19 Jun 2001, Michel [iso-8859-1] Dänzer wrote:
> > That would be nice, unfortunately it doesn't. For the record, here's the patch > against xf-4_1-branch I tested: Please try the attached patch. This fixes the problem on PCI machines and could possibly fix yours too. It is against the stock 4.1.0 driver. ani
--- r128_driver.c.orig Tue Jun 19 22:37:21 2001 +++ r128_driver.c Tue Jun 19 22:48:31 2001 @@ -192,6 +192,7 @@ "vgaHWUnlock", "vgaHWSave", "vgaHWRestore", + "vgaHWGetIOBase", NULL }; @@ -1378,6 +1379,8 @@ return FALSE; } + vgaHWGetIOBase(VGAHWPTR(pScrn)); + info->PciInfo = xf86GetPciInfoForEntity(info->pEnt->index); info->PciTag = pciTag(info->PciInfo->bus, info->PciInfo->device, @@ -2314,14 +2317,20 @@ unsigned char *R128MMIO = info->MMIO; R128SavePtr save = &info->SavedReg; vgaHWPtr hwp = VGAHWPTR(pScrn); + int flags; R128TRACE(("R128Save\n")); if (info->FBDev) { fbdevHWSave(pScrn); return; } +#if !defined(__powerpc__) + flags = VGA_SR_ALL; +#else + flags = VGA_SR_MODE; +#endif vgaHWUnlock(hwp); - vgaHWSave(pScrn, &hwp->SavedReg, VGA_SR_ALL); /* save mode, fonts, cmap */ + vgaHWSave(pScrn, &hwp->SavedReg, flags); vgaHWLock(hwp); R128SaveMode(pScrn, save);