summaryrefslogtreecommitdiffstats
path: root/src/gallium/winsys
diff options
context:
space:
mode:
authorMathias Fröhlich <Mathias.Froehlich@gmx.net>2011-10-08 21:33:23 +0200
committerMarek Olšák <maraeo@gmail.com>2011-10-24 18:20:07 +0200
commit2717b8f034db16cf551e167aa5ce3a9be3bf730b (patch)
tree16dbfadf8f95ba3eee83991542e8bdfe1c621acf /src/gallium/winsys
parent50b0069fc18f9d4d3c4469897b379df55eece547 (diff)
downloadexternal_mesa3d-2717b8f034db16cf551e167aa5ce3a9be3bf730b.zip
external_mesa3d-2717b8f034db16cf551e167aa5ce3a9be3bf730b.tar.gz
external_mesa3d-2717b8f034db16cf551e167aa5ce3a9be3bf730b.tar.bz2
winsys/radeon: restore the old r600g winsys memory characteristics.
Use VRAM for static and immutable buffers. This restores the recently removed r600g winsys behaviour for memory locations. This also improoves rendering times on the gpu for some OpenSceneGraph based test cases by about 15%. Signed-off-by: Marek Olšák <maraeo@gmail.com>
Diffstat (limited to 'src/gallium/winsys')
-rw-r--r--src/gallium/winsys/radeon/drm/radeon_drm_bo.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
index 2dca3b9..4bb433a 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_bo.c
@@ -530,6 +530,11 @@ radeon_winsys_bo_create(struct radeon_winsys *rws,
desc.initial_domains = RADEON_GEM_DOMAIN_GTT;
desc.reloc_domains = RADEON_GEM_DOMAIN_GTT;
break;
+ case PIPE_USAGE_IMMUTABLE:
+ case PIPE_USAGE_STATIC:
+ desc.initial_domains = RADEON_GEM_DOMAIN_VRAM;
+ desc.reloc_domains = RADEON_GEM_DOMAIN_VRAM;
+ break;
default:
if (bind & (PIPE_BIND_VERTEX_BUFFER | PIPE_BIND_INDEX_BUFFER |
PIPE_BIND_CONSTANT_BUFFER)) {