summaryrefslogtreecommitdiff
path: root/linux-core/drm_bo.c
diff options
context:
space:
mode:
authorThomas Hellstrom <thomas-at-tungstengraphics-dot-com>2007-10-26 10:25:57 +0200
committerThomas Hellstrom <thomas-at-tungstengraphics-dot-com>2007-10-26 10:25:57 +0200
commit26c32a3d797efb7474e5ae88c46afcb0e6015294 (patch)
tree5e85b8f6110d64e285e8723c6dc38c30a3c1ebe5 /linux-core/drm_bo.c
parent9adf8c02563b1e6110e46dabd733e2dc440b4200 (diff)
Buffer flags and masks are 64-bit.
don't mask off the high dword.
Diffstat (limited to 'linux-core/drm_bo.c')
-rw-r--r--linux-core/drm_bo.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/linux-core/drm_bo.c b/linux-core/drm_bo.c
index b6a972ed..04900fec 100644
--- a/linux-core/drm_bo.c
+++ b/linux-core/drm_bo.c
@@ -54,9 +54,9 @@ static int drm_bo_setup_vm_locked(struct drm_buffer_object * bo);
static void drm_bo_takedown_vm_locked(struct drm_buffer_object * bo);
static void drm_bo_unmap_virtual(struct drm_buffer_object * bo);
-static inline uint32_t drm_bo_type_flags(unsigned type)
+static inline uint64_t drm_bo_type_flags(unsigned type)
{
- return (1 << (24 + type));
+ return (1ULL << (24 + type));
}
/*
@@ -784,10 +784,10 @@ static int drm_bo_mem_force_space(struct drm_device * dev,
static int drm_bo_mt_compatible(struct drm_mem_type_manager * man,
uint32_t mem_type,
- uint32_t mask, uint32_t * res_mask)
+ uint64_t mask, uint32_t * res_mask)
{
- uint32_t cur_flags = drm_bo_type_flags(mem_type);
- uint32_t flag_diff;
+ uint64_t cur_flags = drm_bo_type_flags(mem_type);
+ uint64_t flag_diff;
if (man->flags & _DRM_FLAG_MEMTYPE_CACHED)
cur_flags |= DRM_BO_FLAG_CACHED;
@@ -1270,7 +1270,7 @@ static void drm_buffer_user_object_unmap(struct drm_file *file_priv,
* Note that new_mem_flags are NOT transferred to the bo->mem.mask.
*/
-int drm_bo_move_buffer(struct drm_buffer_object * bo, uint32_t new_mem_flags,
+int drm_bo_move_buffer(struct drm_buffer_object * bo, uint64_t new_mem_flags,
int no_wait, int move_unfenced)
{
struct drm_device *dev = bo->dev;