struct si_texture *tex = (struct si_texture *)res;
res->bo_size = size;
- res->bo_alignment = alignment;
+ res->bo_alignment_log2 = util_logbase2(alignment);
res->flags = 0;
res->texture_handle_allocated = false;
res->image_handle_allocated = false;
struct pb_buffer *old_buf, *new_buf;
/* Allocate a new resource. */
- new_buf = sscreen->ws->buffer_create(sscreen->ws, res->bo_size, res->bo_alignment, res->domains,
- res->flags);
+ new_buf = sscreen->ws->buffer_create(sscreen->ws, res->bo_size, 1 << res->bo_alignment_log2,
+ res->domains, res->flags);
if (!new_buf) {
return false;
}
assert(sdst->vram_usage_kb == ssrc->vram_usage_kb);
assert(sdst->gart_usage_kb == ssrc->gart_usage_kb);
assert(sdst->bo_size == ssrc->bo_size);
- assert(sdst->bo_alignment == ssrc->bo_alignment);
+ assert(sdst->bo_alignment_log2 == ssrc->bo_alignment_log2);
assert(sdst->domains == ssrc->domains);
si_rebind_buffer(sctx, dst);
res->buf = imported_buf;
res->gpu_address = sscreen->ws->buffer_get_virtual_address(res->buf);
res->bo_size = imported_buf->size;
- res->bo_alignment = 1 << imported_buf->alignment_log2;
+ res->bo_alignment_log2 = imported_buf->alignment_log2;
res->domains = sscreen->ws->buffer_get_initial_domain(res->buf);
if (res->domains & RADEON_DOMAIN_VRAM)
tex->buffer.vram_usage_kb = new_tex->buffer.vram_usage_kb;
tex->buffer.gart_usage_kb = new_tex->buffer.gart_usage_kb;
tex->buffer.bo_size = new_tex->buffer.bo_size;
- tex->buffer.bo_alignment = new_tex->buffer.bo_alignment;
+ tex->buffer.bo_alignment_log2 = new_tex->buffer.bo_alignment_log2;
tex->buffer.domains = new_tex->buffer.domains;
tex->buffer.flags = new_tex->buffer.flags;
if (plane0) {
/* The buffer is shared with the first plane. */
resource->bo_size = plane0->buffer.bo_size;
- resource->bo_alignment = plane0->buffer.bo_alignment;
+ resource->bo_alignment_log2 = plane0->buffer.bo_alignment_log2;
resource->flags = plane0->buffer.flags;
resource->domains = plane0->buffer.domains;
resource->vram_usage_kb = plane0->buffer.vram_usage_kb;
resource->buf = imported_buf;
resource->gpu_address = sscreen->ws->buffer_get_virtual_address(resource->buf);
resource->bo_size = imported_buf->size;
- resource->bo_alignment = 1 << imported_buf->alignment_log2;
+ resource->bo_alignment_log2 = imported_buf->alignment_log2;
resource->domains = sscreen->ws->buffer_get_initial_domain(resource->buf);
if (resource->domains & RADEON_DOMAIN_VRAM)
resource->vram_usage_kb = MAX2(1, resource->bo_size / 1024);