summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i965/intel_context.h
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2007-12-07 16:15:49 -0800
committerEric Anholt <eric@anholt.net>2007-12-07 16:19:10 -0800
commite3a6e60040b7f6ea7965e52f8f9881ed31e0347c (patch)
tree6fadf576b904bb479936a355ed716ca305556848 /src/mesa/drivers/dri/i965/intel_context.h
parent3ecdae82d751f9f404d10332f030e3280949ce4e (diff)
[965] Convert the driver to dri_bufmgr interface and enable TTM.
This is currently believed to work but be a significant performance loss. Performance recovery should be soon to follow. The dri_bo_fake_disable_backing_store() call was added to allow backing store disable like bufmgr_fake.c did, which is a significant performance win (though it's missing the no-fence-subdata part). This commit is a squash merge of the 965-ttm branch, which had some history I wanted to avoid pulling due to noisiness and brokenness at many points for git-bisecting.
Diffstat (limited to 'src/mesa/drivers/dri/i965/intel_context.h')
-rw-r--r--src/mesa/drivers/dri/i965/intel_context.h27
1 files changed, 10 insertions, 17 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_context.h b/src/mesa/drivers/dri/i965/intel_context.h
index fa35f3fbe5..4aa9413bec 100644
--- a/src/mesa/drivers/dri/i965/intel_context.h
+++ b/src/mesa/drivers/dri/i965/intel_context.h
@@ -151,17 +151,16 @@ struct intel_context
GLfloat s0, GLfloat s1,
GLfloat t0, GLfloat t1);
-
-
+ void (*debug_batch)(struct intel_context *intel);
} vtbl;
GLint refcount;
GLuint Fallback;
GLuint NewGLState;
- GLuint last_swap_fence;
- GLuint second_last_swap_fence;
-
+ dri_fence *first_swap_fence;
+ dri_fence *last_swap_fence;
+
GLuint stats_wm;
struct intel_batchbuffer *batch;
@@ -178,29 +177,17 @@ struct intel_context
GLboolean hw_stencil;
GLboolean hw_stipple;
GLboolean depth_buffer_is_float;
- GLboolean no_hw;
GLboolean no_rast;
- GLboolean thrashing;
GLboolean locked;
GLboolean strict_conformance;
GLboolean need_flush;
-
-
- /* AGP memory buffer manager:
- */
- struct bufmgr *bm;
-
-
/* State for intelvb.c and inteltris.c.
*/
GLenum render_primitive;
GLenum reduced_primitive;
- struct intel_region *front_region;
- struct intel_region *back_region;
struct intel_region *draw_region;
- struct intel_region *depth_region;
/* These refer to the current draw (front vs. back) buffer:
*/
@@ -218,6 +205,12 @@ struct intel_context
drmLock *driHwLock;
int driFd;
+ /* Cached values from the screen private. */
+ dri_bufmgr *bufmgr;
+ struct intel_region *front_region;
+ struct intel_region *back_region;
+ struct intel_region *depth_region;
+
__DRIdrawablePrivate *driDrawable;
__DRIdrawablePrivate *driReadDrawable;
__DRIscreenPrivate *driScreen;