aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/radeon/r100.c
diff options
context:
space:
mode:
authorMichel Dänzer <daenzer@vmware.com>2009-09-15 11:09:30 -0400
committerDave Airlie <airlied@redhat.com>2009-09-18 02:01:59 -0400
commitc88f9f0c91de55efaece6d9bd9ec920b90244776 (patch)
treeb171eada095c88ad432ec3cc320426771829ce8d /drivers/gpu/drm/radeon/r100.c
parent733289c2656c556d5cf36eafa1c8ec77222c359f (diff)
drm/radeon/kms: Use surfaces for scanout / cursor byte swapping on big endian.
Signed-off-by: Michel Dänzer <daenzer@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/radeon/r100.c')
-rw-r--r--drivers/gpu/drm/radeon/r100.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/r100.c b/drivers/gpu/drm/radeon/r100.c
index fa0fdc1e3457..737970b43aef 100644
--- a/drivers/gpu/drm/radeon/r100.c
+++ b/drivers/gpu/drm/radeon/r100.c
@@ -2235,6 +2235,11 @@ int r100_set_surface_reg(struct radeon_device *rdev, int reg,
2235 flags |= R300_SURF_TILE_MICRO; 2235 flags |= R300_SURF_TILE_MICRO;
2236 } 2236 }
2237 2237
2238 if (tiling_flags & RADEON_TILING_SWAP_16BIT)
2239 flags |= RADEON_SURF_AP0_SWP_16BPP | RADEON_SURF_AP1_SWP_16BPP;
2240 if (tiling_flags & RADEON_TILING_SWAP_32BIT)
2241 flags |= RADEON_SURF_AP0_SWP_32BPP | RADEON_SURF_AP1_SWP_32BPP;
2242
2238 DRM_DEBUG("writing surface %d %d %x %x\n", reg, flags, offset, offset+obj_size-1); 2243 DRM_DEBUG("writing surface %d %d %x %x\n", reg, flags, offset, offset+obj_size-1);
2239 WREG32(RADEON_SURFACE0_INFO + surf_index, flags); 2244 WREG32(RADEON_SURFACE0_INFO + surf_index, flags);
2240 WREG32(RADEON_SURFACE0_LOWER_BOUND + surf_index, offset); 2245 WREG32(RADEON_SURFACE0_LOWER_BOUND + surf_index, offset);