summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/panfrost/pan_screen.c
diff options
context:
space:
mode:
authorAlyssa Rosenzweig <[email protected]>2019-06-21 13:57:42 -0700
committerAlyssa Rosenzweig <[email protected]>2019-06-25 13:39:17 -0700
commitffcc4d1c4e872b3bb5be1d6952e527e5c091370c (patch)
tree5d76807fb1657ea87e7a226eccc7d4fb23cbe55e /src/gallium/drivers/panfrost/pan_screen.c
parentf57dfe4cdd7a51aa814a0533b30fc22db0357bcc (diff)
panfrost: Handle generate_mipmap ourselves
To avoid interference with the wallpaper code, we need to do some state tracking when generating mipmaps. In particular, we need to mark the generated layers as invalid before generating the mipmap, so we don't try to backblit them if they already had content. Likewise, we need to flush both before and after generating a mipmap since our usual set_framebuffer_state flushing isn't quite there yet. Ideally better optimizations would save the flush but I digress. Signed-off-by: Alyssa Rosenzweig <[email protected]>
Diffstat (limited to 'src/gallium/drivers/panfrost/pan_screen.c')
-rw-r--r--src/gallium/drivers/panfrost/pan_screen.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/panfrost/pan_screen.c b/src/gallium/drivers/panfrost/pan_screen.c
index 15e68fbe2c1..1ae01d5a4f0 100644
--- a/src/gallium/drivers/panfrost/pan_screen.c
+++ b/src/gallium/drivers/panfrost/pan_screen.c
@@ -143,6 +143,9 @@ panfrost_get_param(struct pipe_screen *screen, enum pipe_cap param)
case PIPE_CAP_TGSI_FS_COORD_PIXEL_CENTER_INTEGER:
return 1;
+ case PIPE_CAP_GENERATE_MIPMAP:
+ return 1;
+
case PIPE_CAP_DEPTH_CLIP_DISABLE:
return 1;