diff options
author | Oliver McFadden <z3ro.geek@gmail.com> | 2007-10-31 18:04:53 +0000 |
---|---|---|
committer | Oliver McFadden <z3ro.geek@gmail.com> | 2007-10-31 18:04:53 +0000 |
commit | 2d69856d89a28b6726d7dc63be5cb0f63d44fa83 (patch) | |
tree | a6d47c89a77ba4191e8d580991499d2231f4e252 | |
parent | 980aea59574b2a511de181591255f25be50c0423 (diff) |
Explicitly mask the lower (unused) bits of the physical address.
I was informed these bits are most likely used for flags.
-rw-r--r-- | src/revenge_memory.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/revenge_memory.c b/src/revenge_memory.c index 5d66f8f..7a9edc8 100644 --- a/src/revenge_memory.c +++ b/src/revenge_memory.c @@ -69,13 +69,15 @@ memory_gart_to_phys (unsigned int addr) break; } + phys_addr = phys_addr & ~(ATI_PCIGART_PAGE_SIZE - 1); + if (option_debug && option_verbose) { printf ("%s: addr = 0x%08x phys_addr = 0x%08x (%d)\n", __func__, addr, phys_addr, num); } - return round_down (phys_addr, ATI_PCIGART_PAGE_SIZE); + return phys_addr; } static void * |