diff options
Diffstat (limited to 'src/radeon_dri.c')
-rw-r--r-- | src/radeon_dri.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/radeon_dri.c b/src/radeon_dri.c index 47b03ba..55eb297 100644 --- a/src/radeon_dri.c +++ b/src/radeon_dri.c @@ -1765,6 +1765,11 @@ void RADEONDRICloseScreen(ScreenPtr pScreen) info->pciMemHandle = 0; } + if (info->pciGartBackup) { + xfree(info->pciGartBackup); + info->pciGartBackup = NULL; + } + /* De-allocate all DRI resources */ DRICloseScreen(pScreen); @@ -2040,5 +2045,13 @@ void RADEONDRIAllocatePCIGARTTable(ScreenPtr pScreen) return; info->pciGartSize = RADEON_PCIGART_TABLE_SIZE; + + /* allocate space to back up PCIEGART table */ + info->pciGartBackup = xnfcalloc(1, info->pciGartSize); + if (info->pciGartBackup == NULL) + return; + info->pciGartOffset = (info->FbMapSize - info->FbSecureSize); + + } |