summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/drm/intel/gem/intel_drm_api.c
diff options
context:
space:
mode:
authorJakob Bornecrantz <wallbraker@gmail.com>2009-09-23 11:54:22 -0700
committerJakob Bornecrantz <wallbraker@gmail.com>2009-09-27 13:19:49 -0700
commit5aecddc1532d6c7f5095145a50eed0405ea2bda4 (patch)
tree6102610a594b69fd647c3b1c3476632d08707d7c /src/gallium/winsys/drm/intel/gem/intel_drm_api.c
parent60d72d9e45b08c14ea4195950302f93e52e03603 (diff)
i915g: Make sure to map tiled buffers via the gtt
Diffstat (limited to 'src/gallium/winsys/drm/intel/gem/intel_drm_api.c')
-rw-r--r--src/gallium/winsys/drm/intel/gem/intel_drm_api.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/winsys/drm/intel/gem/intel_drm_api.c b/src/gallium/winsys/drm/intel/gem/intel_drm_api.c
index 46fdc9f92b..8b647a769b 100644
--- a/src/gallium/winsys/drm/intel/gem/intel_drm_api.c
+++ b/src/gallium/winsys/drm/intel/gem/intel_drm_api.c
@@ -41,6 +41,7 @@ intel_drm_buffer_from_handle(struct intel_drm_winsys *idws,
const char* name, unsigned handle)
{
struct intel_drm_buffer *buf = CALLOC_STRUCT(intel_drm_buffer);
+ uint32_t tile = 0, swizzle = 0;
if (!buf)
return NULL;
@@ -53,6 +54,10 @@ intel_drm_buffer_from_handle(struct intel_drm_winsys *idws,
if (!buf->bo)
goto err;
+ drm_intel_bo_get_tiling(buf->bo, &tile, &swizzle);
+ if (tile != INTEL_TILE_NONE)
+ buf->map_gtt = TRUE;
+
return (struct intel_buffer *)buf;
err: