summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/common
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2008-05-02 11:52:52 -0700
committerEric Anholt <eric@anholt.net>2008-05-02 12:58:25 -0700
commit89bba44e969f15bf20da6d700c493237b095a588 (patch)
tree8660dc28a50401231119ed49ee997ccea98b92de /src/mesa/drivers/dri/common
parent3323ccb803282dddcf1e403df33d00eaa0fbd0f8 (diff)
Add intel_bufmgr_gem for new graphics execution manager.
Diffstat (limited to 'src/mesa/drivers/dri/common')
-rw-r--r--src/mesa/drivers/dri/common/dri_bufmgr.c4
-rw-r--r--src/mesa/drivers/dri/common/dri_bufmgr.h17
-rw-r--r--src/mesa/drivers/dri/common/dri_bufmgr_fake.c4
3 files changed, 14 insertions, 11 deletions
diff --git a/src/mesa/drivers/dri/common/dri_bufmgr.c b/src/mesa/drivers/dri/common/dri_bufmgr.c
index 4df006fb9f..70ae091499 100644
--- a/src/mesa/drivers/dri/common/dri_bufmgr.c
+++ b/src/mesa/drivers/dri/common/dri_bufmgr.c
@@ -148,9 +148,9 @@ int dri_emit_reloc(dri_bo *reloc_buf, uint64_t flags, GLuint delta,
return reloc_buf->bufmgr->emit_reloc(reloc_buf, flags, delta, offset, target_buf);
}
-void *dri_process_relocs(dri_bo *batch_buf, GLuint *count)
+void *dri_process_relocs(dri_bo *batch_buf)
{
- return batch_buf->bufmgr->process_relocs(batch_buf, count);
+ return batch_buf->bufmgr->process_relocs(batch_buf);
}
void dri_post_submit(dri_bo *batch_buf, dri_fence **last_fence)
diff --git a/src/mesa/drivers/dri/common/dri_bufmgr.h b/src/mesa/drivers/dri/common/dri_bufmgr.h
index 4593eaf9f7..cbfeb9136d 100644
--- a/src/mesa/drivers/dri/common/dri_bufmgr.h
+++ b/src/mesa/drivers/dri/common/dri_bufmgr.h
@@ -41,7 +41,12 @@ typedef struct _dri_bo dri_bo;
typedef struct _dri_fence dri_fence;
struct _dri_bo {
- /** Size in bytes of the buffer object. */
+ /**
+ * Size in bytes of the buffer object.
+ *
+ * The size may be larger than the size originally requested for the
+ * allocation, such as being aligned to page size.
+ */
unsigned long size;
/**
* Card virtual address (offset from the beginning of the aperture) for the
@@ -169,10 +174,10 @@ struct _dri_bufmgr {
* into them the appopriate order.
*
* \param batch_buf buffer at the root of the tree of relocations
- * \param count returns the number of buffers validated.
- * \return relocation record for use in command submission.
- * */
- void *(*process_relocs)(dri_bo *batch_buf, GLuint *count);
+ * \return argument to be completed and passed to the execbuffers ioctl
+ * (if any).
+ */
+ void *(*process_relocs)(dri_bo *batch_buf);
void (*post_submit)(dri_bo *batch_buf, dri_fence **fence);
@@ -214,7 +219,7 @@ void dri_bufmgr_destroy(dri_bufmgr *bufmgr);
int dri_emit_reloc(dri_bo *reloc_buf, uint64_t flags, GLuint delta,
GLuint offset, dri_bo *target_buf);
-void *dri_process_relocs(dri_bo *batch_buf, uint32_t *count);
+void *dri_process_relocs(dri_bo *batch_buf);
void dri_post_process_relocs(dri_bo *batch_buf);
void dri_post_submit(dri_bo *batch_buf, dri_fence **last_fence);
int dri_bufmgr_check_aperture_space(dri_bo *bo);
diff --git a/src/mesa/drivers/dri/common/dri_bufmgr_fake.c b/src/mesa/drivers/dri/common/dri_bufmgr_fake.c
index 9bf3f3437c..9dd06b07eb 100644
--- a/src/mesa/drivers/dri/common/dri_bufmgr_fake.c
+++ b/src/mesa/drivers/dri/common/dri_bufmgr_fake.c
@@ -1098,7 +1098,7 @@ dri_fake_reloc_and_validate_buffer(dri_bo *bo)
}
static void *
-dri_fake_process_relocs(dri_bo *batch_buf, GLuint *count_p)
+dri_fake_process_relocs(dri_bo *batch_buf)
{
dri_bufmgr_fake *bufmgr_fake = (dri_bufmgr_fake *)batch_buf->bufmgr;
dri_bo_fake *batch_fake = (dri_bo_fake *)batch_buf;
@@ -1126,8 +1126,6 @@ dri_fake_process_relocs(dri_bo *batch_buf, GLuint *count_p)
assert(ret == 0);
- *count_p = 0; /* junk */
-
bufmgr_fake->current_total_size = 0;
return NULL;
}