panfrost: Take into account texture layers in SFBD

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com>
This commit is contained in:
Tomeu Vizoso 2019-11-05 11:21:47 +01:00
parent 9447a84f69
commit afeda06062
1 changed files with 6 additions and 5 deletions

View File

@ -130,14 +130,15 @@ panfrost_sfbd_set_cbuf(
struct panfrost_resource *rsrc = pan_resource(surf->texture);
unsigned level = surf->u.tex.level;
assert(surf->u.tex.first_layer == 0);
unsigned first_layer = surf->u.tex.first_layer;
assert(surf->u.tex.last_layer == first_layer);
signed stride = rsrc->slices[level].stride;
mali_ptr base = panfrost_get_texture_address(rsrc, level, first_layer);
fb->format = panfrost_sfbd_format(surf);
unsigned offset = rsrc->slices[level].offset;
signed stride = rsrc->slices[level].stride;
fb->framebuffer = rsrc->bo->gpu + offset;
fb->framebuffer = base;
fb->stride = stride;
if (rsrc->layout == PAN_LINEAR)