aboutsummaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/iris/iris_blit.c
diff options
context:
space:
mode:
authorJordan Justen <[email protected]>2019-07-09 00:47:15 -0700
committerJordan Justen <[email protected]>2019-08-13 15:20:47 -0700
commit246eebba4a8da9c9f4b2b7b98b83c116832dc410 (patch)
tree0d1c25690fb45752f16d68486187a6d42b1b0240 /src/gallium/drivers/iris/iris_blit.c
parent99c8eb997d685517a9a498d0b0cbc9333e5b7efb (diff)
iris: Export and import surfaces with modifiers that have aux data
The DRI interface for modifiers with aux data treats the aux data as a separate plane of the main surface. When the dri layer requests the plane associated with the aux data, we save the required information into the dri aux plane image. Later when the image is used, the dri plane image will be available in the pipe_resource structure's `next` field. Therefore in iris, we reconstruct the aux setup from this separate dri plane image when the image is used. Signed-off-by: Jordan Justen <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/gallium/drivers/iris/iris_blit.c')
-rw-r--r--src/gallium/drivers/iris/iris_blit.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/drivers/iris/iris_blit.c b/src/gallium/drivers/iris/iris_blit.c
index 6fa452c68b1..3f9bee19085 100644
--- a/src/gallium/drivers/iris/iris_blit.c
+++ b/src/gallium/drivers/iris/iris_blit.c
@@ -238,6 +238,8 @@ iris_blorp_surf_for_resource(struct iris_vtable *vtbl,
{
struct iris_resource *res = (void *) p_res;
+ assert(!iris_resource_unfinished_aux_import(res));
+
if (aux_usage == ISL_AUX_USAGE_HIZ &&
!iris_resource_level_has_hiz(res, level))
aux_usage = ISL_AUX_USAGE_NONE;