r600g: fix depth hw resource copies.
authorDave Airlie <airlied@redhat.com>
Tue, 1 Feb 2011 07:20:53 +0000 (17:20 +1000)
committerDave Airlie <airlied@redhat.com>
Thu, 3 Feb 2011 04:19:37 +0000 (14:19 +1000)
With the previous fixes we can now enabled hw depth copies

Signed-off-by: Dave Airlie <airlied@redhat.com>
src/gallium/drivers/r600/r600_blit.c
src/gallium/drivers/r600/r600_texture.c

index ca032811048f5c7a4017c04298deab9deea90bf9..c200dd7305bf8949cd0b72b4748a0d911ce86e26 100644 (file)
@@ -208,15 +208,8 @@ static void r600_resource_copy_region(struct pipe_context *ctx,
                                      unsigned src_level,
                                      const struct pipe_box *src_box)
 {
-       boolean is_depth;
-       /* there is something wrong with depth resource copies at the moment so avoid them for now */
-       is_depth = util_format_get_component_bits(src->format, UTIL_FORMAT_COLORSPACE_ZS, 0) != 0;
-       if (is_depth)
-               util_resource_copy_region(ctx, dst, dst_level, dstx, dsty, dstz,
-                                         src, src_level, src_box);
-       else
-               r600_hw_copy_region(ctx, dst, dst_level, dstx, dsty, dstz,
-                                   src, src_level, src_box);
+       r600_hw_copy_region(ctx, dst, dst_level, dstx, dsty, dstz,
+                           src, src_level, src_box);
 }
 
 void r600_init_blit_functions(struct r600_pipe_context *rctx)
index 1d0e482253e44e6756f68e688b5e2dc150111a1c..c773c4b84a6d6967b7c9198c61b1857050041ab6 100644 (file)
@@ -291,15 +291,6 @@ 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,