summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Brace <kevinbrace@gmx.com>2018-12-17 16:00:36 -0600
committerKevin Brace <kevinbrace@gmx.com>2019-01-27 21:08:09 -0800
commit175586a648374fbe702469f99e4fb1c5ca144e10 (patch)
tree634c71d02d2191f1d234de6d802a348a4ce6e6c0
parent1d3102739815eb0c37bd9a9134bd0eb80deb3895 (diff)
Use libpciaccess for newer X Servers when unmapping video RAM
Commit d1e29902483a82e86b07cd30d41d411e71b776ea missed using XSERVER_LIBPCIACCESS conditional compilation keyword when unmapping video RAM. This meant that the code was not getting compiled correctly for newer X Servers due to the missing xf86UnMapVidMem. Signed-off-by: Kevin Brace <kevinbrace@gmx.com>
-rw-r--r--src/apm_driver.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/apm_driver.c b/src/apm_driver.c
index 4be81de..3c41b1c 100644
--- a/src/apm_driver.c
+++ b/src/apm_driver.c
@@ -752,7 +752,11 @@ ApmPreInit(ScrnInfoPtr pScrn, int flags)
LinMap[0xFFECDB] = db;
LinMap[0xFFECD9] = d9;
/*pciWriteLong(pApm->PciTag, PCI_CMD_STAT_REG, save);*/
+#ifndef XSERVER_LIBPCIACCESS
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)LinMap, pApm->LinMapSize);
+#else
+ pci_device_unmap_range(pApm->PciInfo, (pointer)LinMap, pApm->LinMapSize);
+#endif
from = X_PROBED;
}
else {
@@ -1135,11 +1139,19 @@ ApmUnmapMem(ScrnInfoPtr pScrn)
WRXB(0xDB, pApm->db);
}
WRXB(0xC9, pApm->c9);
+#ifndef XSERVER_LIBPCIACCESS
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pApm->LinMap, pApm->LinMapSize);
+#else
+ pci_device_unmap_range(pApm->PciInfo, (pointer)pApm->LinMap, pApm->LinMapSize);
+#endif
pApm->LinMap = NULL;
}
else if (pApm->FbBase)
+#ifndef XSERVER_LIBPCIACCESS
xf86UnMapVidMem(pScrn->scrnIndex, (pointer)pApm->LinMap, 0x10000);
+#else
+ pci_device_unmap_range(pApm->PciInfo, (pointer)pApm->LinMap, 0x10000);
+#endif
return TRUE;
}