summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillem Jover <guillem@hadrons.org>2013-10-03 14:25:45 +0200
committerGuillem Jover <guillem@hadrons.org>2013-10-22 03:59:46 +0200
commitb15c1e8ef9858c85ead44ded22c7d48bd8ffa501 (patch)
tree11ce169cb2f0ef9351fbbfba7d046abd78f4d505
parent828c151064083e4488a4cb3854f8dcb23265e5cb (diff)
Unmap MMIO ranges for all chips
This is relevant on SLI setups, where each chip has their own MMIO range. Signed-off-by: Guillem Jover <guillem@hadrons.org> Reviewed-by: Adam Jackson <ajax@redhat.com>
-rw-r--r--src/tdfx_driver.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/tdfx_driver.c b/src/tdfx_driver.c
index 130c066..bcd674f 100644
--- a/src/tdfx_driver.c
+++ b/src/tdfx_driver.c
@@ -1310,9 +1310,12 @@ TDFXUnmapMem(ScrnInfoPtr pScrn)
pci_device_unmap_range(pTDFX->PciInfo[0],
pTDFX->FbBase,
pTDFX->FbMapSize);
- pci_device_unmap_range(pTDFX->PciInfo[0],
- pTDFX->MMIOBase[0],
- TDFXIOMAPSIZE);
+
+ for (i = 0; i < pTDFX->numChips; i++) {
+ pci_device_unmap_range(pTDFX->PciInfo[i],
+ pTDFX->MMIOBase[i],
+ TDFXIOMAPSIZE);
+ }
(void) memset(pTDFX->MMIOBase, 0, sizeof(pTDFX->MMIOBase));
pTDFX->FbBase = NULL;