summaryrefslogtreecommitdiff
path: root/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-02-14 17:43:32 +0100
committerMarek Olšák <maraeo@gmail.com>2010-03-21 21:54:07 +0100
commit12dc4971735a8703c298d35eb21e3d1a2e053217 (patch)
treec0690678151b372d52eef2169bf43f36d2beca89 /src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c
parent33d2349119ada410dbfbaa667fc7aef8b60d1a6f (diff)
r300g: add and enable square microtiling
It requires DRM 2.1.0 (e.g. kernel 2.6.34) and is disabled on older ones. Finally, the texture tiling implementation is now complete. Uff.
Diffstat (limited to 'src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c')
-rw-r--r--src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c b/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c
index 0a86acc228..e36bad7ea8 100644
--- a/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c
+++ b/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c
@@ -314,9 +314,11 @@ void radeon_drm_bufmgr_set_tiling(struct pb_buffer *_buf,
struct radeon_drm_buffer *buf = get_drm_buffer(_buf);
uint32_t flags = 0, old_flags, old_pitch;
if (microtiled == R300_BUFFER_TILED)
- flags |= RADEON_BO_FLAGS_MICRO_TILE;
+ flags |= RADEON_BO_FLAGS_MICRO_TILE;
+ else if (microtiled == R300_BUFFER_SQUARETILED)
+ flags |= RADEON_BO_FLAGS_MICRO_TILE_SQUARE;
if (macrotiled == R300_BUFFER_TILED)
- flags |= RADEON_BO_FLAGS_MACRO_TILE;
+ flags |= RADEON_BO_FLAGS_MACRO_TILE;
radeon_bo_get_tiling(buf->bo, &old_flags, &old_pitch);