Module: Mesa Branch: master Commit: 3d9c1a9dd64282ab10a01cfa87a4e6b877faf8b3 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3d9c1a9dd64282ab10a01cfa87a4e6b877faf8b3
Author: Stéphane Marchesin <marc...@chromium.org> Date: Sat Nov 22 00:11:40 2014 -0800 i915g: Fallback copy_render for ZS formats These don't work out of the box, need more work, maybe with a proxy format? Signed-off-by: Stéphane Marchesin <marc...@chromium.org> --- src/gallium/drivers/i915/i915_surface.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/i915/i915_surface.c b/src/gallium/drivers/i915/i915_surface.c index b516172..24e0156 100644 --- a/src/gallium/drivers/i915/i915_surface.c +++ b/src/gallium/drivers/i915/i915_surface.c @@ -89,9 +89,19 @@ i915_surface_copy_render(struct pipe_context *pipe, struct pipe_box dstbox; struct pipe_sampler_view src_templ, *src_view; struct pipe_surface dst_templ, *dst_view; + const struct util_format_description *desc; /* Fallback for buffers. */ - if ((dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER)) + if (dst->target == PIPE_BUFFER && src->target == PIPE_BUFFER) + goto fallback; + + /* Fallback for depth&stencil. XXX: see if we can use a proxy format */ + desc = util_format_description(src->format); + if (desc->colorspace == UTIL_FORMAT_COLORSPACE_ZS) + goto fallback; + + desc = util_format_description(dst->format); + if (desc->colorspace == UTIL_FORMAT_COLORSPACE_ZS) goto fallback; util_blitter_default_dst_texture(&dst_templ, dst, dst_level, dstz); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-commit