summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Skeggs <skeggsb@gmail.com>2007-07-12 10:47:53 +1000
committerBen Skeggs <skeggsb@gmail.com>2007-07-12 10:47:53 +1000
commit99e0fbc1a34f535abf41c6f4566901c326dfa4b5 (patch)
tree11a16d29c1bb601ff7c76a24ff001cf11e60f7aa
parente88b20b392c6972088d88f52b2da83b82b821be5 (diff)
Match drm 0.0.9 interface changes.
-rw-r--r--src/nv_dri.c2
-rw-r--r--src/nv_mem.c23
2 files changed, 6 insertions, 19 deletions
diff --git a/src/nv_dri.c b/src/nv_dri.c
index bb9987b..772f5fc 100644
--- a/src/nv_dri.c
+++ b/src/nv_dri.c
@@ -244,7 +244,7 @@ Bool NVDRIGetVersion(ScrnInfoPtr pScrn)
}
/* temporary lock step versioning */
-#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 8
+#if NOUVEAU_DRM_HEADER_PATCHLEVEL != 9
#error nouveau_drm.h doesn't match expected patchlevel, update libdrm.
#endif
if (pNv->pKernelDRMVersion->version_patchlevel !=
diff --git a/src/nv_mem.c b/src/nv_mem.c
index 25dc256..44e3d39 100644
--- a/src/nv_mem.c
+++ b/src/nv_mem.c
@@ -22,23 +22,16 @@ NVAllocRec *NVAllocateMemory(NVPtr pNv, int type, int size)
}
mem->type = memalloc.flags;
mem->size = memalloc.size;
- mem->offset = memalloc.region_offset;
+ mem->offset = memalloc.offset;
- if (drmMap(pNv->drm_fd, mem->offset, mem->size, &mem->map)) {
- ErrorF("drmMap() failed. offset=0x%llx, size=%lld (%d)\n",
- mem->offset, mem->size, errno);
+ if (drmMap(pNv->drm_fd, memalloc.map_handle, mem->size, &mem->map)) {
+ ErrorF("drmMap() failed. handle=0x%llx, size=%lld (%d)\n",
+ memalloc.map_handle, mem->size, errno);
mem->map = NULL;
NVFreeMemory(pNv, mem);
return NULL;
}
- if (mem->type & NOUVEAU_MEM_FB)
- mem->offset -= pNv->VRAMPhysical;
- else if (mem->type & NOUVEAU_MEM_AGP)
- mem->offset -= pNv->AGPPhysical;
- else if (mem->type & NOUVEAU_MEM_PCI)
- mem->offset -= pNv->SGPhysical;
-
return mem;
}
@@ -55,13 +48,7 @@ void NVFreeMemory(NVPtr pNv, NVAllocRec *mem)
}
memfree.flags = mem->type;
- memfree.region_offset = mem->offset;
- if (mem->type & NOUVEAU_MEM_FB)
- memfree.region_offset += pNv->VRAMPhysical;
- else if (mem->type & NOUVEAU_MEM_AGP)
- memfree.region_offset += pNv->AGPPhysical;
- else if (mem->type & NOUVEAU_MEM_PCI)
- memfree.region_offset += pNv->SGPhysical;
+ memfree.offset = mem->offset;
if (drmCommandWriteRead(pNv->drm_fd,
DRM_NOUVEAU_MEM_FREE, &memfree,