From 8a3c181e9cc761abb647a8e813f25e3fa4441a9a Mon Sep 17 00:00:00 2001 From: Keith Whitwell Date: Thu, 11 Nov 2010 15:41:49 +0000 Subject: [PATCH] r600g: do not try to use staging resource for depth textures Currently r600_resource_copy_region() will turn these copies into transfers + memcpys, so to avoid recursion we must not turn those transfers back into blits. --- src/gallium/drivers/r600/r600_texture.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c index a590858c852..56313e992d8 100644 --- a/src/gallium/drivers/r600/r600_texture.c +++ b/src/gallium/drivers/r600/r600_texture.c @@ -479,6 +479,15 @@ static boolean permit_hardware_blit(struct pipe_screen *screen, else bind = PIPE_BIND_RENDER_TARGET; + /* See r600_resource_copy_region: there is something wrong + * with depth resource copies at the moment so avoid them for + * now. + */ + if (util_format_get_component_bits(res->format, + UTIL_FORMAT_COLORSPACE_ZS, + 0) != 0) + return FALSE; + if (!screen->is_format_supported(screen, res->format, res->target, -- 2.30.2