diff options
author | Michel Dänzer <daenzer@vmware.com> | 2009-09-15 11:09:30 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-09-18 02:01:59 -0400 |
commit | c88f9f0c91de55efaece6d9bd9ec920b90244776 (patch) | |
tree | b171eada095c88ad432ec3cc320426771829ce8d /drivers/gpu/drm/radeon/r100.c | |
parent | 733289c2656c556d5cf36eafa1c8ec77222c359f (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.c | 5 |
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); |