diff options
Diffstat (limited to 'drivers/gpu/drm/radeon/atombios_crtc.c')
-rw-r--r-- | drivers/gpu/drm/radeon/atombios_crtc.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/drivers/gpu/drm/radeon/atombios_crtc.c b/drivers/gpu/drm/radeon/atombios_crtc.c index 742f17f009a9..72672ea3f6d3 100644 --- a/drivers/gpu/drm/radeon/atombios_crtc.c +++ b/drivers/gpu/drm/radeon/atombios_crtc.c | |||
@@ -1031,6 +1031,7 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc, | |||
1031 | struct radeon_bo *rbo; | 1031 | struct radeon_bo *rbo; |
1032 | uint64_t fb_location; | 1032 | uint64_t fb_location; |
1033 | uint32_t fb_format, fb_pitch_pixels, tiling_flags; | 1033 | uint32_t fb_format, fb_pitch_pixels, tiling_flags; |
1034 | unsigned bankw, bankh, mtaspect, tile_split; | ||
1034 | u32 fb_swap = EVERGREEN_GRPH_ENDIAN_SWAP(EVERGREEN_GRPH_ENDIAN_NONE); | 1035 | u32 fb_swap = EVERGREEN_GRPH_ENDIAN_SWAP(EVERGREEN_GRPH_ENDIAN_NONE); |
1035 | u32 tmp, viewport_w, viewport_h; | 1036 | u32 tmp, viewport_w, viewport_h; |
1036 | int r; | 1037 | int r; |
@@ -1121,20 +1122,13 @@ static int dce4_crtc_do_set_base(struct drm_crtc *crtc, | |||
1121 | break; | 1122 | break; |
1122 | } | 1123 | } |
1123 | 1124 | ||
1124 | switch ((tmp & 0xf000) >> 12) { | ||
1125 | case 0: /* 1KB rows */ | ||
1126 | default: | ||
1127 | fb_format |= EVERGREEN_GRPH_TILE_SPLIT(EVERGREEN_ADDR_SURF_TILE_SPLIT_1KB); | ||
1128 | break; | ||
1129 | case 1: /* 2KB rows */ | ||
1130 | fb_format |= EVERGREEN_GRPH_TILE_SPLIT(EVERGREEN_ADDR_SURF_TILE_SPLIT_2KB); | ||
1131 | break; | ||
1132 | case 2: /* 4KB rows */ | ||
1133 | fb_format |= EVERGREEN_GRPH_TILE_SPLIT(EVERGREEN_ADDR_SURF_TILE_SPLIT_4KB); | ||
1134 | break; | ||
1135 | } | ||
1136 | |||
1137 | fb_format |= EVERGREEN_GRPH_ARRAY_MODE(EVERGREEN_GRPH_ARRAY_2D_TILED_THIN1); | 1125 | fb_format |= EVERGREEN_GRPH_ARRAY_MODE(EVERGREEN_GRPH_ARRAY_2D_TILED_THIN1); |
1126 | |||
1127 | evergreen_tiling_fields(tiling_flags, &bankw, &bankh, &mtaspect, &tile_split); | ||
1128 | fb_format |= EVERGREEN_GRPH_TILE_SPLIT(tile_split); | ||
1129 | fb_format |= EVERGREEN_GRPH_BANK_WIDTH(bankw); | ||
1130 | fb_format |= EVERGREEN_GRPH_BANK_HEIGHT(bankh); | ||
1131 | fb_format |= EVERGREEN_GRPH_MACRO_TILE_ASPECT(mtaspect); | ||
1138 | } else if (tiling_flags & RADEON_TILING_MICRO) | 1132 | } else if (tiling_flags & RADEON_TILING_MICRO) |
1139 | fb_format |= EVERGREEN_GRPH_ARRAY_MODE(EVERGREEN_GRPH_ARRAY_1D_TILED_THIN1); | 1133 | fb_format |= EVERGREEN_GRPH_ARRAY_MODE(EVERGREEN_GRPH_ARRAY_1D_TILED_THIN1); |
1140 | 1134 | ||