* address space or graphics device aperture. They must be mapped using
* bo_map() to be used by the CPU, and validated for use using bo_validate()
* to be used from the graphics device.
- *
- * XXX: flags/hint reason to live?
*/
dri_bo *(*bo_alloc)(dri_bufmgr *bufmgr_ctx, const char *name,
unsigned long size, unsigned int alignment,
- unsigned int flags, unsigned int hint);
+ unsigned int location_mask);
/**
* Allocates a buffer object for a static allocation.
*
* Static allocations are ones such as the front buffer that are offered by
* the X Server, which are never evicted and never moved.
- *
- * XXX: flags/hint reason to live?
*/
dri_bo *(*bo_alloc_static)(dri_bufmgr *bufmgr_ctx, const char *name,
unsigned long offset, unsigned long size,
- void *virtual, unsigned int flags,
- unsigned int hint);
+ void *virtual, unsigned int location_mask);
/** Takes a reference on a buffer object */
void (*bo_reference)(dri_bo *bo);
void (*fence_wait)(dri_fence *fence);
/**
- * Checks and returns whether the given fence is signaled.
+ * Tears down the buffer manager instance.
*/
+ void (*destroy)(dri_bufmgr *bufmgr);
};
dri_bo *dri_bo_alloc(dri_bufmgr *bufmgr, const char *name, unsigned long size,
- unsigned int alignment, unsigned int flags,
- unsigned int hint);
+ unsigned int alignment, unsigned int location_mask);
dri_bo *dri_bo_alloc_static(dri_bufmgr *bufmgr, const char *name,
unsigned long offset, unsigned long size,
- void *virtual, unsigned int flags,
- unsigned int hint);
+ void *virtual, unsigned int location_mask);
void dri_bo_reference(dri_bo *bo);
void dri_bo_unreference(dri_bo *bo);
int dri_bo_map(dri_bo *buf, GLboolean write_enable);
int (*fence_wait)(void *private,
unsigned int cookie),
void *driver_priv);
-void dri_bufmgr_fake_contended_lock_take(dri_bufmgr *bufmgr);
+void dri_bufmgr_destroy(dri_bufmgr *bufmgr);
+dri_bo *dri_ttm_bo_create_from_handle(dri_bufmgr *bufmgr, const char *name,
+ unsigned int handle);
#endif