freedreno: reduce resource dependency tracking overhead
[mesa.git] / src / gallium / drivers / freedreno / freedreno_resource.c
index 344004f6965a931073e186e5695c2a7b904714f9..4b23b6458576dcc91b6642fd719b85f1e849dcf4 100644 (file)
@@ -1,5 +1,3 @@
-/* -*- mode: C; c-file-style: "k&r"; tab-width 4; indent-tabs-mode: t; -*- */
-
 /*
  * Copyright (C) 2012 Rob Clark <robclark@freedesktop.org>
  *
@@ -848,7 +846,7 @@ fd_resource_create(struct pipe_screen *pscreen,
                 (fd_mesa_debug & FD_DBG_LRZ) && has_depth(format)) {
                const uint32_t flags = DRM_FREEDRENO_GEM_CACHE_WCOMBINE |
                                DRM_FREEDRENO_GEM_TYPE_KMEM; /* TODO */
-               unsigned lrz_pitch  = align(DIV_ROUND_UP(tmpl->width0, 8), 32);
+               unsigned lrz_pitch  = align(DIV_ROUND_UP(tmpl->width0, 8), 64);
                unsigned lrz_height = DIV_ROUND_UP(tmpl->height0, 8);
                unsigned size = lrz_pitch * lrz_height * 2;
 
@@ -1085,8 +1083,7 @@ fd_blitter_pipe_begin(struct fd_context *ctx, bool render_cond, bool discard,
        util_blitter_save_depth_stencil_alpha(ctx->blitter, ctx->zsa);
        util_blitter_save_stencil_ref(ctx->blitter, &ctx->stencil_ref);
        util_blitter_save_sample_mask(ctx->blitter, ctx->sample_mask);
-       util_blitter_save_framebuffer(ctx->blitter,
-                       ctx->batch ? &ctx->batch->framebuffer : NULL);
+       util_blitter_save_framebuffer(ctx->blitter, &ctx->framebuffer);
        util_blitter_save_fragment_sampler_states(ctx->blitter,
                        ctx->tex[PIPE_SHADER_FRAGMENT].num_samplers,
                        (void **)ctx->tex[PIPE_SHADER_FRAGMENT].samplers);
@@ -1184,7 +1181,7 @@ fd_resource_screen_init(struct pipe_screen *pscreen)
        pscreen->resource_destroy = u_transfer_helper_resource_destroy;
 
        pscreen->transfer_helper = u_transfer_helper_create(&transfer_vtbl,
-                       true, fake_rgtc, true);
+                       true, false, fake_rgtc, true);
 
        if (!screen->setup_slices)
                screen->setup_slices = fd_setup_slices;