summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_pipe.h
diff options
context:
space:
mode:
authorJerome Glisse <[email protected]>2010-09-24 17:33:30 -0400
committerJerome Glisse <[email protected]>2010-09-24 17:33:30 -0400
commit6613605d79bc84043e74c7eefe8025c2c7c4978b (patch)
treef51f08caee59a30dde1d05069934df352e88eace /src/gallium/drivers/r600/r600_pipe.h
parent3ad4486bfeea0d38f0789431e5e8fc1e6579e3aa (diff)
r600g: bring over fix from old path to new path
Up to 2010-09-19: r600g: fix tiling support for ddx supplied buffers 9b146eae2521d8e5f6d3cbefa4f6f7737666313a user buffer seems to be broken... new to fix that. Signed-off-by: Jerome Glisse <[email protected]>
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.h')
-rw-r--r--src/gallium/drivers/r600/r600_pipe.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h
index c64ca404905..e05a14f4e93 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -111,14 +111,21 @@ struct r600_pipe_context {
/* shader information */
unsigned sprite_coord_enable;
bool flatshade;
+ struct u_upload_mgr *upload_vb;
+ struct u_upload_mgr *upload_ib;
+ enum radeon_family family;
};
struct r600_drawl {
struct pipe_context *ctx;
unsigned mode;
+ unsigned min_index;
+ unsigned max_index;
+ unsigned index_bias;
unsigned start;
unsigned count;
unsigned index_size;
+ unsigned index_buffer_offset;
struct pipe_resource *index_buffer;
};
@@ -129,6 +136,12 @@ uint32_t r600_translate_texformat(enum pipe_format format,
/* r600_state2.c */
int r600_pipe_shader_update2(struct pipe_context *ctx, struct r600_pipe_shader *shader);
int r600_pipe_shader_create2(struct pipe_context *ctx, struct r600_pipe_shader *shader, const struct tgsi_token *tokens);
+int r600_upload_index_buffer2(struct r600_pipe_context *rctx, struct r600_drawl *draw);
+int r600_upload_user_buffers2(struct r600_pipe_context *rctx);
+void r600_translate_index_buffer2(struct r600_pipe_context *r600,
+ struct pipe_resource **index_buffer,
+ unsigned *index_size,
+ unsigned *start, unsigned count);
/* evergreen_state.c */
void evergreen_init_state_functions2(struct r600_pipe_context *rctx);