[Mesa-dev] [PATCH v3 3/6] gallium/auxiliary/vl: Rename csc_matrix and increase its size.

Zhu, James James.Zhu at amd.com
Thu Feb 7 16:37:29 UTC 2019


Rename csc_matrix to shader_params, and increase shader_params size
to store more constants for compute shader,

Signed-off-by: James Zhu <James.Zhu at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
---
 src/gallium/auxiliary/vl/vl_compositor.c     | 10 +++++-----
 src/gallium/auxiliary/vl/vl_compositor.h     |  2 +-
 src/gallium/auxiliary/vl/vl_compositor_gfx.c |  2 +-
 3 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/gallium/auxiliary/vl/vl_compositor.c b/src/gallium/auxiliary/vl/vl_compositor.c
index de6cf17..4509913 100644
--- a/src/gallium/auxiliary/vl/vl_compositor.c
+++ b/src/gallium/auxiliary/vl/vl_compositor.c
@@ -439,7 +439,7 @@ vl_compositor_set_csc_matrix(struct vl_compositor_state *s,
 
    assert(s);
 
-   float *ptr = pipe_buffer_map(s->pipe, s->csc_matrix,
+   float *ptr = pipe_buffer_map(s->pipe, s->shader_params,
                                PIPE_TRANSFER_WRITE | PIPE_TRANSFER_DISCARD_RANGE,
                                &buf_transfer);
 
@@ -750,15 +750,15 @@ vl_compositor_init_state(struct vl_compositor_state *s, struct pipe_context *pip
     * Const buffer contains the color conversion matrix and bias vectors
     */
    /* XXX: Create with IMMUTABLE/STATIC... although it does change every once in a long while... */
-   s->csc_matrix = pipe_buffer_create_const0
+   s->shader_params = pipe_buffer_create_const0
    (
       pipe->screen,
       PIPE_BIND_CONSTANT_BUFFER,
       PIPE_USAGE_DEFAULT,
-      sizeof(csc_matrix) + 2*sizeof(float)
+      sizeof(csc_matrix) + 4*sizeof(float) + 6*sizeof(int)
    );
 
-   if (!s->csc_matrix)
+   if (!s->shader_params)
       return false;
 
    vl_compositor_clear_layers(s);
@@ -776,5 +776,5 @@ vl_compositor_cleanup_state(struct vl_compositor_state *s)
    assert(s);
 
    vl_compositor_clear_layers(s);
-   pipe_resource_reference(&s->csc_matrix, NULL);
+   pipe_resource_reference(&s->shader_params, NULL);
 }
diff --git a/src/gallium/auxiliary/vl/vl_compositor.h b/src/gallium/auxiliary/vl/vl_compositor.h
index aa843c3..c34bad0 100644
--- a/src/gallium/auxiliary/vl/vl_compositor.h
+++ b/src/gallium/auxiliary/vl/vl_compositor.h
@@ -90,7 +90,7 @@ struct vl_compositor_state
 
    bool scissor_valid;
    struct pipe_scissor_state scissor;
-   struct pipe_resource *csc_matrix;
+   struct pipe_resource *shader_params;
 
    union pipe_color_union clear_color;
 
diff --git a/src/gallium/auxiliary/vl/vl_compositor_gfx.c b/src/gallium/auxiliary/vl/vl_compositor_gfx.c
index 93e418a..62db005 100644
--- a/src/gallium/auxiliary/vl/vl_compositor_gfx.c
+++ b/src/gallium/auxiliary/vl/vl_compositor_gfx.c
@@ -719,7 +719,7 @@ vl_compositor_gfx_render(struct vl_compositor_state *s,
    c->pipe->bind_vs_state(c->pipe, c->vs);
    c->pipe->set_vertex_buffers(c->pipe, 0, 1, &c->vertex_buf);
    c->pipe->bind_vertex_elements_state(c->pipe, c->vertex_elems_state);
-   pipe_set_constant_buffer(c->pipe, PIPE_SHADER_FRAGMENT, 0, s->csc_matrix);
+   pipe_set_constant_buffer(c->pipe, PIPE_SHADER_FRAGMENT, 0, s->shader_params);
    c->pipe->bind_rasterizer_state(c->pipe, c->rast);
 
    draw_layers(c, s, dirty_area);
-- 
2.7.4



More information about the mesa-dev mailing list