Go to the source code of this file.
Functions | |
static void * | pool_create (struct _DriBufferPool *pool, unsigned long size, uint64_t flags, unsigned hint, unsigned alignment) |
static int | pool_destroy (struct _DriBufferPool *pool, void *private) |
static int | pool_waitIdle (struct _DriBufferPool *pool, void *private, pipe_mutex *mutex, int lazy) |
static int | pool_map (struct _DriBufferPool *pool, void *private, unsigned flags, int hint, pipe_mutex *mutex, void **virtual) |
static int | pool_unmap (struct _DriBufferPool *pool, void *private) |
static unsigned long | pool_offset (struct _DriBufferPool *pool, void *private) |
static unsigned long | pool_poolOffset (struct _DriBufferPool *pool, void *private) |
static uint64_t | pool_flags (struct _DriBufferPool *pool, void *private) |
static unsigned long | pool_size (struct _DriBufferPool *pool, void *private) |
static int | pool_fence (struct _DriBufferPool *pool, void *private, struct _DriFenceObject *fence) |
static drmBO * | pool_kernel (struct _DriBufferPool *pool, void *private) |
static void | pool_takedown (struct _DriBufferPool *pool) |
struct _DriBufferPool * | driMallocPoolInit (void) |
struct _DriBufferPool* driMallocPoolInit | ( | void | ) | [read] |
Definition at line 137 of file ws_dri_mallocpool.c.
References _DriBufferPool::create, _DriBufferPool::data, _DriBufferPool::destroy, _DriBufferPool::fd, _DriBufferPool::fence, _DriBufferPool::flags, _DriBufferPool::kernel, _DriBufferPool::map, _DriBufferPool::offset, pool_create(), pool_destroy(), pool_fence(), pool_flags(), pool_kernel(), pool_map(), pool_offset(), pool_poolOffset(), pool_size(), pool_takedown(), pool_unmap(), pool_waitIdle(), _DriBufferPool::poolOffset, _DriBufferPool::size, _DriBufferPool::takeDown, _DriBufferPool::unmap, _DriBufferPool::validate, and _DriBufferPool::waitIdle.
00138 { 00139 struct _DriBufferPool *pool; 00140 00141 pool = (struct _DriBufferPool *) malloc(sizeof(*pool)); 00142 if (!pool) 00143 return NULL; 00144 00145 pool->data = NULL; 00146 pool->fd = -1; 00147 pool->map = &pool_map; 00148 pool->unmap = &pool_unmap; 00149 pool->destroy = &pool_destroy; 00150 pool->offset = &pool_offset; 00151 pool->poolOffset = &pool_poolOffset; 00152 pool->flags = &pool_flags; 00153 pool->size = &pool_size; 00154 pool->create = &pool_create; 00155 pool->fence = &pool_fence; 00156 pool->kernel = &pool_kernel; 00157 pool->validate = NULL; 00158 pool->waitIdle = &pool_waitIdle; 00159 pool->takeDown = &pool_takedown; 00160 return pool; 00161 }
static void* pool_create | ( | struct _DriBufferPool * | pool, | |
unsigned long | size, | |||
uint64_t | flags, | |||
unsigned | hint, | |||
unsigned | alignment | |||
) | [static] |
Definition at line 41 of file ws_dri_mallocpool.c.
00044 { 00045 unsigned long *private = malloc(size + 2*sizeof(unsigned long)); 00046 if ((flags & DRM_BO_MASK_MEM) != DRM_BO_FLAG_MEM_LOCAL) 00047 abort(); 00048 00049 *private = size; 00050 return (void *)private; 00051 }
static int pool_destroy | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static int pool_fence | ( | struct _DriBufferPool * | pool, | |
void * | private, | |||
struct _DriFenceObject * | fence | |||
) | [static] |
static uint64_t pool_flags | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static drmBO* pool_kernel | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static int pool_map | ( | struct _DriBufferPool * | pool, | |
void * | private, | |||
unsigned | flags, | |||
int | hint, | |||
pipe_mutex * | mutex, | |||
void ** | virtual | |||
) | [static] |
static unsigned long pool_offset | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static unsigned long pool_poolOffset | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static unsigned long pool_size | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static void pool_takedown | ( | struct _DriBufferPool * | pool | ) | [static] |
static int pool_unmap | ( | struct _DriBufferPool * | pool, | |
void * | private | |||
) | [static] |
static int pool_waitIdle | ( | struct _DriBufferPool * | pool, | |
void * | private, | |||
pipe_mutex * | mutex, | |||
int | lazy | |||
) | [static] |