diff options
author | Maciej Cencora <m.cencora@gmail.com> | 2009-12-15 23:13:08 +0100 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-12-16 16:09:19 +1000 |
commit | 6e7267721fd67d626433ea10c59fc232c6928259 (patch) | |
tree | 3a139cfb0c8618f9f746076665a98eb169d5b3c5 | |
parent | a3922105319120a48b97ebb42cb43acb5a7e4e73 (diff) |
drm/radeon/kms: allow for texture tiling
This adds the relocations for texture tiling for KMS.
Signed-off-by: Maciej Cencora <m.cencora@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/radeon/r300.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/gpu/drm/radeon/r300.c b/drivers/gpu/drm/radeon/r300.c index e47af526fc0..dbb149060b1 100644 --- a/drivers/gpu/drm/radeon/r300.c +++ b/drivers/gpu/drm/radeon/r300.c @@ -686,7 +686,15 @@ static int r300_packet0_check(struct radeon_cs_parser *p, r100_cs_dump_packet(p, pkt); return r; } - ib[idx] = idx_value + ((u32)reloc->lobj.gpu_offset); + + if (reloc->lobj.tiling_flags & RADEON_TILING_MACRO) + tile_flags |= R300_TXO_MACRO_TILE; + if (reloc->lobj.tiling_flags & RADEON_TILING_MICRO) + tile_flags |= R300_TXO_MICRO_TILE; + + tmp = idx_value + ((u32)reloc->lobj.gpu_offset); + tmp |= tile_flags; + ib[idx] = tmp; track->textures[i].robj = reloc->robj; break; /* Tracked registers */ |