Fix flipped sign to strerror.
[mesa.git] / src / mesa / drivers / dri / common / dri_bufmgr.h
index 62ed9d38218a7331f5f9800f4a62cca4f108f41f..3be342926f74e9d1de1321553a1ca7ba2b674bfd 100644 (file)
@@ -81,25 +81,20 @@ struct _dri_bufmgr {
     * 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);
@@ -160,17 +155,16 @@ struct _dri_bufmgr {
    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);
@@ -197,6 +191,8 @@ dri_bufmgr *dri_bufmgr_fake_init(unsigned long low_offset, void *low_virtual,
                                 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