Lines Matching refs:tt
392 static void ttm_pool_free_range(struct ttm_pool *pool, struct ttm_tt *tt, in ttm_pool_free_range() argument
396 struct page **pages = &tt->pages[start_page]; in ttm_pool_free_range()
405 if (tt->dma_address) in ttm_pool_free_range()
406 ttm_pool_unmap(pool, tt->dma_address[i], nr); in ttm_pool_free_range()
428 int ttm_pool_alloc(struct ttm_pool *pool, struct ttm_tt *tt, in ttm_pool_alloc() argument
431 pgoff_t num_pages = tt->num_pages; in ttm_pool_alloc()
432 dma_addr_t *dma_addr = tt->dma_address; in ttm_pool_alloc()
433 struct page **caching = tt->pages; in ttm_pool_alloc()
434 struct page **pages = tt->pages; in ttm_pool_alloc()
442 WARN_ON(!num_pages || ttm_tt_is_populated(tt)); in ttm_pool_alloc()
445 if (tt->page_flags & TTM_TT_FLAG_ZERO_ALLOC) in ttm_pool_alloc()
461 page_caching = tt->caching; in ttm_pool_alloc()
462 pt = ttm_pool_select_type(pool, tt->caching, order); in ttm_pool_alloc()
466 tt->caching); in ttm_pool_alloc()
493 tt->caching); in ttm_pool_alloc()
516 r = ttm_pool_apply_caching(caching, pages, tt->caching); in ttm_pool_alloc()
526 num_pages = tt->num_pages - num_pages; in ttm_pool_alloc()
527 caching_divide = caching - tt->pages; in ttm_pool_alloc()
528 ttm_pool_free_range(pool, tt, tt->caching, 0, caching_divide); in ttm_pool_alloc()
529 ttm_pool_free_range(pool, tt, ttm_cached, caching_divide, num_pages); in ttm_pool_alloc()
543 void ttm_pool_free(struct ttm_pool *pool, struct ttm_tt *tt) in ttm_pool_free() argument
545 ttm_pool_free_range(pool, tt, tt->caching, 0, tt->num_pages); in ttm_pool_free()