summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakob Bornecrantz <jakob@tungstengraphics.com>2008-05-29 16:56:42 +0200
committerJakob Bornecrantz <jakob@tungstengraphics.com>2008-05-30 13:46:50 +0200
commit7b0a551c4cebc44cc06face712eb9659ccdebcc9 (patch)
tree0d3c09dc918bc9cf8cbe39057df0db2a4e6ecda6
parent3869c3c87a40d9f41414082ad8dd3d747e6b34d8 (diff)
i915: Made batch buffer size much larger
-rw-r--r--src/gallium/winsys/dri/intel/intel_batchbuffer.c2
-rw-r--r--src/gallium/winsys/dri/intel/intel_screen.c6
-rw-r--r--src/gallium/winsys/dri/intel/intel_screen.h1
3 files changed, 5 insertions, 4 deletions
diff --git a/src/gallium/winsys/dri/intel/intel_batchbuffer.c b/src/gallium/winsys/dri/intel/intel_batchbuffer.c
index aa2eed53b8..09d4eef484 100644
--- a/src/gallium/winsys/dri/intel/intel_batchbuffer.c
+++ b/src/gallium/winsys/dri/intel/intel_batchbuffer.c
@@ -65,7 +65,7 @@ intel_batchbuffer_reset(struct intel_batchbuffer *batch)
driBOUnrefUserList(batch->list);
driBOResetList(batch->list);
- batch->size = 4 * 4096; // ZZZ JB batch->intel->intelScreen->maxBatchSize;
+ batch->size = batch->intel->intelScreen->max_batch_size;
driBOData(batch->buffer, batch->size, NULL, NULL, 0);
/*
diff --git a/src/gallium/winsys/dri/intel/intel_screen.c b/src/gallium/winsys/dri/intel/intel_screen.c
index 429a2cf8f8..0be88974f4 100644
--- a/src/gallium/winsys/dri/intel/intel_screen.c
+++ b/src/gallium/winsys/dri/intel/intel_screen.c
@@ -200,8 +200,8 @@ intelCreatePools(__DRIscreenPrivate * sPriv)
DRM_BO_FLAG_MEM_TT,
DRM_BO_FLAG_EXE |
DRM_BO_FLAG_MEM_TT,
- 4 * 4096, //intelScreen->maxBatchSize,
- 1, 40, 16*16384, 0,
+ intelScreen->max_batch_size,
+ 1, 40, intelScreen->max_batch_size * 16, 0,
intelScreen->fMan);
#endif
intelScreen->havePools = GL_TRUE;
@@ -262,7 +262,7 @@ intelInitDriver(__DRIscreenPrivate * sPriv)
(*glx_enable_extension) (psc, "GLX_SGI_make_current_read");
}
-
+ intelScreen->max_batch_size = 16 * 4096;
#if 1 // ZZZ JB
intelScreen->mgr = driFenceMgrTTMInit(sPriv->fd);
diff --git a/src/gallium/winsys/dri/intel/intel_screen.h b/src/gallium/winsys/dri/intel/intel_screen.h
index c17f0202e4..1db0502b13 100644
--- a/src/gallium/winsys/dri/intel/intel_screen.h
+++ b/src/gallium/winsys/dri/intel/intel_screen.h
@@ -80,6 +80,7 @@ struct intel_screen
struct _DriFenceMgr *mgr;
struct _DriFreeSlabManager *fMan;
unsigned batch_id;
+ unsigned max_batch_size;
struct pipe_winsys *winsys;
};