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>
This commit is contained in:
parent
733289c265
commit
c88f9f0c91
4 changed files with 31 additions and 108 deletions
|
@ -2235,6 +2235,11 @@ int r100_set_surface_reg(struct radeon_device *rdev, int reg,
|
|||
flags |= R300_SURF_TILE_MICRO;
|
||||
}
|
||||
|
||||
if (tiling_flags & RADEON_TILING_SWAP_16BIT)
|
||||
flags |= RADEON_SURF_AP0_SWP_16BPP | RADEON_SURF_AP1_SWP_16BPP;
|
||||
if (tiling_flags & RADEON_TILING_SWAP_32BIT)
|
||||
flags |= RADEON_SURF_AP0_SWP_32BPP | RADEON_SURF_AP1_SWP_32BPP;
|
||||
|
||||
DRM_DEBUG("writing surface %d %d %x %x\n", reg, flags, offset, offset+obj_size-1);
|
||||
WREG32(RADEON_SURFACE0_INFO + surf_index, flags);
|
||||
WREG32(RADEON_SURFACE0_LOWER_BOUND + surf_index, offset);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue