gem_stress: add buf->size

Removes a dependency on gem_stress internals from the rendercpy
functions.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Daniel Vetter 2012-01-18 00:34:15 +01:00
parent d75d69d0a9
commit 205510badf
2 changed files with 5 additions and 3 deletions

View File

@ -413,10 +413,10 @@ static void sanitize_stride(struct scratch_buf *buf)
{
if (buf_height(buf) > options.max_dimension)
buf->stride = options.scratch_buf_size / options.max_dimension;
buf->stride = buf->size / options.max_dimension;
if (buf_height(buf) < options.tile_size)
buf->stride = options.scratch_buf_size / options.tile_size;
buf->stride = buf->size / options.tile_size;
if (buf_width(buf) < options.tile_size)
buf->stride = options.tile_size * sizeof(uint32_t);
@ -433,6 +433,7 @@ static void sanitize_stride(struct scratch_buf *buf)
static void init_buffer(struct scratch_buf *buf, unsigned size)
{
buf->bo = drm_intel_bo_alloc(bufmgr, "tiled bo", size, 4096);
buf->size = size;
assert(buf->bo);
buf->tiling = I915_TILING_NONE;
buf->stride = 4096;

View File

@ -22,6 +22,7 @@ struct scratch_buf {
uint32_t tiling;
uint32_t *data;
uint32_t *cpu_mapping;
uint32_t size;
unsigned num_tiles;
};
@ -86,7 +87,7 @@ static inline unsigned buf_width(struct scratch_buf *buf)
static inline unsigned buf_height(struct scratch_buf *buf)
{
return options.scratch_buf_size/buf->stride;
return buf->size/buf->stride;
}
void gen6_render_copyfunc(struct scratch_buf *src, unsigned src_x, unsigned src_y,