From e1fd79b31e130e9e4bafcab914491973147b7f86 Mon Sep 17 00:00:00 2001 From: Thomas Hellstrom Date: Mon, 23 May 2005 20:56:54 +0000 Subject: VIA: 64-bit fixes. Bumped driver date and patchlevel. --- shared/via.h | 2 +- shared/via_drv.h | 4 ++-- shared/via_ds.h | 2 +- shared/via_mm.c | 16 +++++++++------- shared/via_mm.h | 2 +- 5 files changed, 14 insertions(+), 12 deletions(-) (limited to 'shared') diff --git a/shared/via.h b/shared/via.h index 9a21e89a..ae69f656 100644 --- a/shared/via.h +++ b/shared/via.h @@ -30,7 +30,7 @@ #define DRIVER_NAME "via" #define DRIVER_DESC "VIA Unichrome / Pro" -#define DRIVER_DATE "20050508" +#define DRIVER_DATE "20050523" #define DRIVER_MAJOR 2 #define DRIVER_MINOR 6 diff --git a/shared/via_drv.h b/shared/via_drv.h index 8227b735..18c6da78 100644 --- a/shared/via_drv.h +++ b/shared/via_drv.h @@ -27,8 +27,8 @@ #include "via_drm.h" #include "via_verifier.h" -#define VIA_PCI_BUF_SIZE 120000 -#define VIA_FIRE_BUF_SIZE 2048 +#define VIA_PCI_BUF_SIZE 60000 +#define VIA_FIRE_BUF_SIZE 1024 #define VIA_NUM_IRQS 2 diff --git a/shared/via_ds.h b/shared/via_ds.h index cdcb6456..f9e0b952 100644 --- a/shared/via_ds.h +++ b/shared/via_ds.h @@ -31,7 +31,7 @@ /* Set Data Structure */ #define SET_SIZE 5000 -typedef unsigned int ITEM_TYPE; +typedef unsigned long ITEM_TYPE; typedef struct { ITEM_TYPE val; diff --git a/shared/via_mm.c b/shared/via_mm.c index d450cdd5..aca9d7dd 100644 --- a/shared/via_mm.c +++ b/shared/via_mm.c @@ -142,7 +142,7 @@ int via_final_context(struct drm_device *dev, int context) if (i < MAX_CONTEXT) { set_t *set; - unsigned int item; + ITEM_TYPE item; int retval; DRM_DEBUG("find socket %d, context = %d\n", i, context); @@ -151,7 +151,7 @@ int via_final_context(struct drm_device *dev, int context) set = global_ppriv[i].sets[0]; retval = via_setFirst(set, &item); while (retval) { - DRM_DEBUG("free video memory 0x%x\n", item); + DRM_DEBUG("free video memory 0x%lx\n", item); via_mmFreeMem((PMemBlock) item); retval = via_setNext(set, &item); } @@ -161,7 +161,7 @@ int via_final_context(struct drm_device *dev, int context) set = global_ppriv[i].sets[1]; retval = via_setFirst(set, &item); while (retval) { - DRM_DEBUG("free agp memory 0x%x\n", item); + DRM_DEBUG("free agp memory 0x%lx\n", item); via_mmFreeMem((PMemBlock) item); retval = via_setNext(set, &item); } @@ -169,6 +169,8 @@ int via_final_context(struct drm_device *dev, int context) global_ppriv[i].used = 0; } + via_release_futex(dev_priv, context); + #if defined(__linux__) /* Linux specific until context tracking code gets ported to BSD */ @@ -223,7 +225,7 @@ int via_fb_alloc(drm_via_mem_t * mem) block = via_mmAllocMem(FBHeap, fb.size, 5, 0); if (block) { fb.offset = block->ofs; - fb.free = (unsigned int)block; + fb.free = (unsigned long)block; if (!add_alloc_set(fb.context, VIDEO, fb.free)) { DRM_DEBUG("adding to allocation set fails\n"); via_mmFreeMem((PMemBlock) fb.free); @@ -260,7 +262,7 @@ int via_agp_alloc(drm_via_mem_t * mem) block = via_mmAllocMem(AgpHeap, agp.size, 5, 0); if (block) { agp.offset = block->ofs; - agp.free = (unsigned int)block; + agp.free = (unsigned long)block; if (!add_alloc_set(agp.context, AGP, agp.free)) { DRM_DEBUG("adding to allocation set fails\n"); via_mmFreeMem((PMemBlock) agp.free); @@ -324,7 +326,7 @@ int via_fb_free(drm_via_mem_t * mem) retval = -1; } - DRM_DEBUG("free fb, free = %d\n", fb.free); + DRM_DEBUG("free fb, free = %ld\n", fb.free); return retval; } @@ -347,7 +349,7 @@ int via_agp_free(drm_via_mem_t * mem) retval = -1; } - DRM_DEBUG("free agp, free = %d\n", agp.free); + DRM_DEBUG("free agp, free = %ld\n", agp.free); return retval; } diff --git a/shared/via_mm.h b/shared/via_mm.h index ea83a0ba..02a7251e 100644 --- a/shared/via_mm.h +++ b/shared/via_mm.h @@ -28,7 +28,7 @@ typedef struct { unsigned int context; unsigned int size; unsigned long offset; - unsigned int free; + unsigned long free; } drm_via_mm_t; typedef struct { -- cgit v1.2.3