Lines Matching refs:dma_bo

214 	struct radeon_dma_bo *dma_bo = NULL;
225 dma_bo = CALLOC_STRUCT(radeon_dma_bo);
226 assert(dma_bo);
229 dma_bo->bo = radeon_bo_open(rmesa->radeonScreen->bom,
233 if (!dma_bo->bo) {
237 insert_at_head(&rmesa->dma.reserved, dma_bo);
242 dma_bo = last_elem(&rmesa->dma.free);
243 remove_from_list(dma_bo);
244 insert_at_head(&rmesa->dma.reserved, dma_bo);
297 struct radeon_dma_bo *dma_bo;
302 foreach_s(dma_bo, temp, &rmesa->dma.free) {
303 remove_from_list(dma_bo);
304 radeon_bo_unref(dma_bo->bo);
305 FREE(dma_bo);
308 foreach_s(dma_bo, temp, &rmesa->dma.wait) {
309 remove_from_list(dma_bo);
310 radeon_bo_unref(dma_bo->bo);
311 FREE(dma_bo);
314 foreach_s(dma_bo, temp, &rmesa->dma.reserved) {
315 remove_from_list(dma_bo);
316 radeon_bo_unref(dma_bo->bo);
317 FREE(dma_bo);
345 struct radeon_dma_bo *dma_bo;
354 foreach(dma_bo, &rmesa->dma.free)
357 foreach(dma_bo, &rmesa->dma.wait)
360 foreach(dma_bo, &rmesa->dma.reserved)
369 foreach_s(dma_bo, temp, &rmesa->dma.wait) {
370 if (dma_bo->expire_counter == time) {
372 radeon_bo_unref(dma_bo->bo);
373 remove_from_list(dma_bo);
374 FREE(dma_bo);
378 if (dma_bo->bo->size < rmesa->dma.minimum_size) {
379 radeon_bo_unref(dma_bo->bo);
380 remove_from_list(dma_bo);
381 FREE(dma_bo);
384 if (!radeon_bo_is_idle(dma_bo->bo)) {
387 remove_from_list(dma_bo);
388 dma_bo->expire_counter = expire_at;
389 insert_at_tail(&rmesa->dma.free, dma_bo);
393 foreach_s(dma_bo, temp, &rmesa->dma.reserved) {
394 radeon_bo_unmap(dma_bo->bo);
396 if (dma_bo->bo->size < rmesa->dma.minimum_size) {
397 radeon_bo_unref(dma_bo->bo);
398 remove_from_list(dma_bo);
399 FREE(dma_bo);
402 remove_from_list(dma_bo);
403 dma_bo->expire_counter = expire_at;
404 insert_at_tail(&rmesa->dma.wait, dma_bo);
408 foreach_s(dma_bo, temp, &rmesa->dma.free) {
409 if (dma_bo->expire_counter != time)
411 remove_from_list(dma_bo);
412 radeon_bo_unref(dma_bo->bo);
413 FREE(dma_bo);