summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/r600_pipe.h
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2010-10-12 13:24:01 +1000
committerDave Airlie <airlied@redhat.com>2010-10-13 15:11:30 +1000
commitc8d4108fbee679735a1cc3f405d848d01bfb23f6 (patch)
tree8519217690f34dda76696e30afd9e325cbd488ef /src/gallium/drivers/r600/r600_pipe.h
parenta8d1d7253ed281fd5c3a8a86658998eb5b9af847 (diff)
r600g: store samplers/views across blit when we need to modify them
also fixup framebuffer state copies to avoid bad state.
Diffstat (limited to 'src/gallium/drivers/r600/r600_pipe.h')
-rw-r--r--src/gallium/drivers/r600/r600_pipe.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_pipe.h b/src/gallium/drivers/r600/r600_pipe.h
index c46029a561..34a59646d5 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -92,6 +92,14 @@ struct r600_pipe_shader {
struct r600_vertex_element vertex_elements;
};
+/* needed for blitter save */
+struct r600_textures_info {
+ struct r600_pipe_sampler_view **views;
+ unsigned n_views;
+ void **samplers;
+ unsigned n_samplers;
+};
+
struct r600_pipe_context {
struct pipe_context context;
struct blitter_context *blitter;
@@ -130,6 +138,8 @@ struct r600_pipe_context {
struct u_upload_mgr *upload_vb;
struct u_upload_mgr *upload_ib;
unsigned any_user_vbs;
+ struct r600_textures_info ps_samplers;
+
};
struct r600_drawl {