summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2017-10-05 02:38:35 +0200
committerMarek Olšák <[email protected]>2017-10-07 18:26:35 +0200
commita46bcf0a771575ce68e0a0585a84ca6029b96b4e (patch)
tree8a1b68c3666b96fc621b9411fb1eb7095fa753d5 /src/gallium/drivers/r600
parent7f8af4624d5e77b1ff4779a361930cadb3ab38ba (diff)
gallium/u_blitter: let drivers set the vertex elements state
radeonsi won't set it. Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600')
-rw-r--r--src/gallium/drivers/r600/r600_pipe_common.c3
-rw-r--r--src/gallium/drivers/r600/r600_pipe_common.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe_common.c b/src/gallium/drivers/r600/r600_pipe_common.c
index 4fbcd3a6572..0e8a12a1b64 100644
--- a/src/gallium/drivers/r600/r600_pipe_common.c
+++ b/src/gallium/drivers/r600/r600_pipe_common.c
@@ -211,6 +211,7 @@ void r600_gfx_wait_fence(struct r600_common_context *ctx,
}
void r600_draw_rectangle(struct blitter_context *blitter,
+ void *vertex_elements_cso,
int x1, int y1, int x2, int y2,
float depth, unsigned num_instances,
enum blitter_attrib_type type,
@@ -223,6 +224,8 @@ void r600_draw_rectangle(struct blitter_context *blitter,
unsigned offset = 0;
float *vb;
+ rctx->b.bind_vertex_elements_state(&rctx->b, vertex_elements_cso);
+
/* Some operations (like color resolve on r6xx) don't work
* with the conventional primitive types.
* One that works is PT_RECTLIST, which we use here. */
diff --git a/src/gallium/drivers/r600/r600_pipe_common.h b/src/gallium/drivers/r600/r600_pipe_common.h
index 719efb9bbab..37dcbd3d316 100644
--- a/src/gallium/drivers/r600/r600_pipe_common.h
+++ b/src/gallium/drivers/r600/r600_pipe_common.h
@@ -762,6 +762,7 @@ unsigned r600_gfx_write_fence_dwords(struct r600_common_screen *screen);
void r600_gfx_wait_fence(struct r600_common_context *ctx,
uint64_t va, uint32_t ref, uint32_t mask);
void r600_draw_rectangle(struct blitter_context *blitter,
+ void *vertex_elements_cso,
int x1, int y1, int x2, int y2,
float depth, unsigned num_instances,
enum blitter_attrib_type type,