summaryrefslogtreecommitdiff
path: root/linux-core/radeon_buffer.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2008-08-14 09:36:34 +1000
committerDave Airlie <airlied@redhat.com>2008-08-14 09:36:34 +1000
commit2d4420c6669dbaead27346b8c7e1979edc94ae5a (patch)
tree134fcbc1e4b902f7e1918d32c991bf2923da2101 /linux-core/radeon_buffer.c
parent1c6abcefdc37f5cbb447e8fee1f3805fd7d19bea (diff)
parent2a65759d159478b126c660ef124777548dcc872c (diff)
Merge branch 'radeon-gem-cs' into modesetting-gem
Conflicts: libdrm/xf86drm.c linux-core/Makefile.kernel linux-core/drmP.h linux-core/drm_compat.h linux-core/drm_drv.c linux-core/drm_stub.c linux-core/drm_vm.c shared-core/i915_dma.c shared-core/r300_cmdbuf.c shared-core/radeon_drv.h
Diffstat (limited to 'linux-core/radeon_buffer.c')
-rw-r--r--linux-core/radeon_buffer.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/linux-core/radeon_buffer.c b/linux-core/radeon_buffer.c
index 227a2fa0..900d450a 100644
--- a/linux-core/radeon_buffer.c
+++ b/linux-core/radeon_buffer.c
@@ -55,10 +55,14 @@ int radeon_invalidate_caches(struct drm_device * dev, uint64_t flags)
drm_radeon_private_t *dev_priv = dev->dev_private;
RING_LOCALS;
+ if (!dev_priv->cp_running)
+ return 0;
+
BEGIN_RING(4);
RADEON_FLUSH_CACHE();
RADEON_FLUSH_ZCACHE();
ADVANCE_RING();
+ COMMIT_RING();
return 0;
}
@@ -261,6 +265,6 @@ uint64_t radeon_evict_flags(struct drm_buffer_object *bo)
case DRM_BO_MEM_TT:
return DRM_BO_FLAG_MEM_LOCAL;
default:
- return DRM_BO_FLAG_MEM_TT | DRM_BO_FLAG_CACHED;
+ return DRM_BO_FLAG_MEM_TT;
}
}