r300g: set correct pitch in libdrm

to match what DDX sets. This prevents some flushes from occuring.
This commit is contained in:
Marek Olšák 2010-05-31 04:01:56 +02:00
parent 7a4601db52
commit 21dfcde3ff
2 changed files with 12 additions and 12 deletions

View file

@ -540,18 +540,18 @@ static void r300_fb_set_tiling_flags(struct r300_context *r300,
level = new_state->cbufs[i]->level;
r300->rws->buffer_set_tiling(r300->rws, tex->buffer,
tex->pitch[0],
tex->microtile,
tex->mip_macrotile[level]);
tex->pitch[0] * util_format_get_blocksize(tex->b.b.format),
tex->microtile,
tex->mip_macrotile[level]);
}
if (new_state->zsbuf) {
tex = r300_texture(new_state->zsbuf->texture);
level = new_state->zsbuf->level;
r300->rws->buffer_set_tiling(r300->rws, tex->buffer,
tex->pitch[0],
tex->microtile,
tex->mip_macrotile[level]);
tex->pitch[0] * util_format_get_blocksize(tex->b.b.format),
tex->microtile,
tex->mip_macrotile[level]);
}
}

View file

@ -963,9 +963,9 @@ struct pipe_resource* r300_texture_create(struct pipe_screen* screen,
base->bind,
tex->size);
rws->buffer_set_tiling(rws, tex->buffer,
tex->pitch[0],
tex->microtile,
tex->macrotile);
tex->pitch[0] * util_format_get_blocksize(tex->b.b.format),
tex->microtile,
tex->macrotile);
if (!tex->buffer) {
FREE(tex);
@ -1093,9 +1093,9 @@ r300_texture_from_handle(struct pipe_screen* screen,
if (override_zb_flags) {
rws->buffer_set_tiling(rws, tex->buffer,
tex->pitch[0],
tex->microtile,
tex->macrotile);
tex->pitch[0] * util_format_get_blocksize(tex->b.b.format),
tex->microtile,
tex->macrotile);
}
return (struct pipe_resource*)tex;
}