summaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorAlex Deucher <[email protected]>2010-09-24 13:20:58 -0400
committerAlex Deucher <[email protected]>2010-09-24 13:20:58 -0400
commit15861e0074bdc0185662ef6a6f4358230a187243 (patch)
tree137ce3a47bafdfcd0432ddd9fd75f14e6d6c272c /src/mesa
parent137fce247f8f575f5ff38da65171bd26b4e38866 (diff)
r600c: fix mipmap stride on evergreen
taken from Dave's r600g fix
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/drivers/dri/radeon/radeon_common_context.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/radeon/radeon_common_context.c b/src/mesa/drivers/dri/radeon/radeon_common_context.c
index b0340cee218..85e4988c53f 100644
--- a/src/mesa/drivers/dri/radeon/radeon_common_context.c
+++ b/src/mesa/drivers/dri/radeon/radeon_common_context.c
@@ -245,9 +245,16 @@ GLboolean radeonInitContext(radeonContextPtr radeon,
DRI_CONF_TEXTURE_DEPTH_32 : DRI_CONF_TEXTURE_DEPTH_16;
if (IS_R600_CLASS(radeon->radeonScreen)) {
- radeon->texture_row_align = 256;
- radeon->texture_rect_row_align = 256;
- radeon->texture_compressed_row_align = 256;
+ int chip_family = radeon->radeonScreen->chip_family;
+ if (chip_family >= CHIP_FAMILY_CEDAR) {
+ radeon->texture_row_align = 512;
+ radeon->texture_rect_row_align = 512;
+ radeon->texture_compressed_row_align = 512;
+ } else {
+ radeon->texture_row_align = 256;
+ radeon->texture_rect_row_align = 256;
+ radeon->texture_compressed_row_align = 256;
+ }
} else if (IS_R200_CLASS(radeon->radeonScreen) ||
IS_R100_CLASS(radeon->radeonScreen)) {
radeon->texture_row_align = 32;