From 05433f20b6547e105d172bd586d3b6ce1b9d0f97 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Thu, 16 Sep 2010 09:33:34 +1000 Subject: r600g: pull r600_draw struct out into header we need this for future buffer rework, it also makes the vtbl easier --- src/gallium/drivers/r600/r600_context.h | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) (limited to 'src/gallium/drivers/r600/r600_context.h') diff --git a/src/gallium/drivers/r600/r600_context.h b/src/gallium/drivers/r600/r600_context.h index 58f6d0232b..7366810de2 100644 --- a/src/gallium/drivers/r600/r600_context.h +++ b/src/gallium/drivers/r600/r600_context.h @@ -114,6 +114,17 @@ struct r600_vertex_element struct pipe_vertex_element elements[32]; }; +struct r600_draw { + struct pipe_context *ctx; + struct radeon_state draw; + struct radeon_state vgt; + unsigned mode; + unsigned start; + unsigned count; + unsigned index_size; + struct pipe_resource *index_buffer; +}; + struct r600_context_hw_states { struct radeon_state rasterizer; struct radeon_state scissor; @@ -162,11 +173,10 @@ struct r600_context_hw_state_vtbl { void (*cb_cntl)(struct r600_context *rctx, struct radeon_state *rstate); int (*vs_resource)(struct r600_context *rctx, int id, struct r600_resource *rbuffer, uint32_t offset, uint32_t stride, uint32_t format); - int (*vgt_init)(struct r600_context *rctx, struct radeon_state *draw, - struct r600_resource *rbuffer, - uint32_t count, int vgt_draw_initiator); - int (*vgt_prim)(struct r600_context *rctx, struct radeon_state *vgt, - uint32_t prim, uint32_t start, uint32_t vgt_dma_index_type); + int (*vgt_init)(struct r600_draw *draw, + int vgt_draw_initiator); + int (*vgt_prim)(struct r600_draw *draw, + uint32_t prim, uint32_t vgt_dma_index_type); int (*ps_shader)(struct r600_context *rctx, struct r600_context_state *rshader, struct radeon_state *state); -- cgit v1.2.3