Searched refs:ttm (Results 1 - 25 of 54) sorted by relevance

123

/drivers/gpu/drm/ttm/
H A Dttm_tt.c43 #include <drm/ttm/ttm_module.h>
44 #include <drm/ttm/ttm_bo_driver.h>
45 #include <drm/ttm/ttm_placement.h>
46 #include <drm/ttm/ttm_page_alloc.h>
49 * Allocates storage for pointers to the pages that back the ttm.
51 static void ttm_tt_alloc_page_directory(struct ttm_tt *ttm) argument
53 ttm->pages = drm_calloc_large(ttm->num_pages, sizeof(void*));
56 static void ttm_dma_tt_alloc_page_directory(struct ttm_dma_tt *ttm) argument
58 ttm
106 ttm_tt_set_caching(struct ttm_tt *ttm, enum ttm_caching_state c_state) argument
152 ttm_tt_set_placement_caching(struct ttm_tt *ttm, uint32_t placement) argument
167 ttm_tt_destroy(struct ttm_tt *ttm) argument
187 ttm_tt_init(struct ttm_tt *ttm, struct ttm_bo_device *bdev, unsigned long size, uint32_t page_flags, struct page *dummy_read_page) argument
210 ttm_tt_fini(struct ttm_tt *ttm) argument
221 struct ttm_tt *ttm = &ttm_dma->ttm; local
245 struct ttm_tt *ttm = &ttm_dma->ttm; local
254 ttm_tt_unbind(struct ttm_tt *ttm) argument
265 ttm_tt_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) argument
289 ttm_tt_swapin(struct ttm_tt *ttm) argument
327 ttm_tt_swapout(struct ttm_tt *ttm, struct file *persistent_swap_storage) argument
381 ttm_tt_clear_mapping(struct ttm_tt *ttm) argument
395 ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A Dttm_agp_backend.c34 #include <drm/ttm/ttm_module.h>
35 #include <drm/ttm/ttm_bo_driver.h>
36 #include <drm/ttm/ttm_page_alloc.h>
38 #include <drm/ttm/ttm_placement.h>
46 struct ttm_tt ttm; member in struct:ttm_agp_backend
51 static int ttm_agp_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) argument
53 struct ttm_agp_backend *agp_be = container_of(ttm, struct ttm_agp_backend, ttm);
59 mem = agp_allocate_memory(agp_be->bridge, ttm->num_pages, AGP_USER_MEMORY);
64 for (i = 0; i < ttm
84 ttm_agp_unbind(struct ttm_tt *ttm) argument
97 ttm_agp_destroy(struct ttm_tt *ttm) argument
137 ttm_agp_tt_populate(struct ttm_tt *ttm) argument
146 ttm_agp_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A DMakefile5 ttm-y := ttm_agp_backend.o ttm_memory.o ttm_tt.o ttm_bo.o \
10 obj-$(CONFIG_DRM_TTM) += ttm.o
H A Dttm_bo_util.c31 #include <drm/ttm/ttm_bo_driver.h>
32 #include <drm/ttm/ttm_placement.h>
51 struct ttm_tt *ttm = bo->ttm; local
56 ttm_tt_unbind(ttm);
63 ret = ttm_tt_set_placement_caching(ttm, new_mem->placement);
68 ret = ttm_tt_bind(ttm, new_mem);
250 static int ttm_copy_io_ttm_page(struct ttm_tt *ttm, void *src, argument
254 struct page *d = ttm->pages[page];
287 static int ttm_copy_ttm_io_page(struct ttm_tt *ttm, voi argument
329 struct ttm_tt *ttm = bo->ttm; local
534 struct ttm_tt *ttm = bo->ttm; local
[all...]
H A Dttm_bo_vm.c33 #include <ttm/ttm_module.h>
34 #include <ttm/ttm_bo_driver.h>
35 #include <ttm/ttm_placement.h>
94 struct ttm_tt *ttm = NULL; local
136 if (bo->ttm && (bo->ttm->page_flags & TTM_PAGE_FLAG_SG)) {
199 ttm = bo->ttm;
204 if (ttm->bdev->driver->ttm_tt_populate(ttm)) {
[all...]
H A Dttm_page_alloc.c48 #include <drm/ttm/ttm_bo_driver.h>
49 #include <drm/ttm/ttm_page_alloc.h>
255 * Select the right pool or requested caching state and ttm flags. */
860 int ttm_pool_populate(struct ttm_tt *ttm) argument
862 struct ttm_mem_global *mem_glob = ttm->glob->mem_glob;
866 if (ttm->state != tt_unpopulated)
869 for (i = 0; i < ttm->num_pages; ++i) {
870 ret = ttm_get_pages(&ttm->pages[i], 1,
871 ttm->page_flags,
872 ttm
899 ttm_pool_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A Dttm_page_alloc_dma.c51 #include <drm/ttm/ttm_bo_driver.h>
52 #include <drm/ttm/ttm_page_alloc.h>
842 struct ttm_tt *ttm = &ttm_dma->ttm; local
850 ttm->pages[index] = d_page->p;
868 struct ttm_tt *ttm = &ttm_dma->ttm; local
869 struct ttm_mem_global *mem_glob = ttm->glob->mem_glob;
876 if (ttm->state != tt_unpopulated)
879 type = ttm_to_type(ttm
927 struct ttm_tt *ttm = &ttm_dma->ttm; local
[all...]
H A Dttm_bo_manager.c31 #include <drm/ttm/ttm_module.h>
32 #include <drm/ttm/ttm_bo_driver.h>
33 #include <drm/ttm/ttm_placement.h>
H A Dttm_execbuf_util.c28 #include <drm/ttm/ttm_execbuf_util.h>
29 #include <drm/ttm/ttm_bo_driver.h>
30 #include <drm/ttm/ttm_placement.h>
/drivers/gpu/drm/nouveau/
H A Dnouveau_sgdma.c11 struct ttm_dma_tt ttm; member in struct:nouveau_sgdma_be
17 nouveau_sgdma_destroy(struct ttm_tt *ttm) argument
19 struct nouveau_sgdma_be *nvbe = (struct nouveau_sgdma_be *)ttm;
21 if (ttm) {
22 ttm_dma_tt_fini(&nvbe->ttm);
28 nv04_sgdma_bind(struct ttm_tt *ttm, struct ttm_mem_reg *mem) argument
30 struct nouveau_sgdma_be *nvbe = (struct nouveau_sgdma_be *)ttm;
33 if (ttm->sg) {
34 node->sg = ttm->sg;
38 node->pages = nvbe->ttm
48 nv04_sgdma_unbind(struct ttm_tt *ttm) argument
62 nv50_sgdma_bind(struct ttm_tt *ttm, struct ttm_mem_reg *mem) argument
80 nv50_sgdma_unbind(struct ttm_tt *ttm) argument
[all...]
H A Dnouveau_ttm.h7 return container_of(bd, struct nouveau_drm, ttm.bdev);
H A Dnouveau_ttm.c286 return ttm_bo_mmap(filp, vma, &drm->ttm.bdev);
307 global_ref = &drm->ttm.mem_global_ref;
316 drm->ttm.mem_global_ref.release = NULL;
320 drm->ttm.bo_global_ref.mem_glob = global_ref->object;
321 global_ref = &drm->ttm.bo_global_ref.ref;
330 drm_global_item_unref(&drm->ttm.mem_global_ref);
331 drm->ttm.mem_global_ref.release = NULL;
341 if (drm->ttm.mem_global_ref.release == NULL)
344 drm_global_item_unref(&drm->ttm.bo_global_ref.ref);
345 drm_global_item_unref(&drm->ttm
[all...]
H A Dnouveau_drm.h38 #include <drm/ttm/ttm_bo_api.h>
39 #include <drm/ttm/ttm_bo_driver.h>
40 #include <drm/ttm/ttm_placement.h>
41 #include <drm/ttm/ttm_memory.h>
42 #include <drm/ttm/ttm_module.h>
43 #include <drm/ttm/ttm_page_alloc.h>
131 } ttm; member in struct:nouveau_drm
H A Dnouveau_bo.c215 nvbo->bo.bdev = &drm->ttm.bdev;
227 acc_size = ttm_bo_dma_acc_size(&drm->ttm.bdev, size,
230 ret = ttm_bo_init(&drm->ttm.bdev, &nvbo->bo, size,
235 /* ttm will call nouveau_bo_del_ttm if it fails.. */
957 struct nouveau_channel *chan = drm->ttm.chan;
963 * old nouveau_mem node, these will get cleaned up after ttm has
975 ret = drm->ttm.move(chan, bo, &bo->mem, new_mem);
1032 &drm->ttm.copy);
1034 ret = mthd->init(chan, drm->ttm.copy.handle);
1036 nvif_object_fini(&drm->ttm
1352 nouveau_ttm_tt_populate(struct ttm_tt *ttm) argument
1418 nouveau_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
/drivers/gpu/drm/radeon/
H A Dradeon_ttm.c32 #include <ttm/ttm_bo_api.h>
33 #include <ttm/ttm_bo_driver.h>
34 #include <ttm/ttm_placement.h>
35 #include <ttm/ttm_module.h>
36 #include <ttm/ttm_page_alloc.h>
312 r = ttm_tt_set_placement_caching(bo->ttm, tmp_mem.placement);
317 r = ttm_tt_bind(bo->ttm, &tmp_mem);
381 if (old_mem->mem_type == TTM_PL_SYSTEM && bo->ttm == NULL) {
495 struct ttm_dma_tt ttm; member in struct:radeon_ttm_tt
505 static int radeon_ttm_tt_pin_userptr(struct ttm_tt *ttm) argument
567 radeon_ttm_tt_unpin_userptr(struct ttm_tt *ttm) argument
594 radeon_ttm_backend_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) argument
624 radeon_ttm_backend_unbind(struct ttm_tt *ttm) argument
636 radeon_ttm_backend_destroy(struct ttm_tt *ttm) argument
678 radeon_ttm_tt_to_gtt(struct ttm_tt *ttm) argument
685 radeon_ttm_tt_populate(struct ttm_tt *ttm) argument
748 radeon_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
789 radeon_ttm_tt_set_userptr(struct ttm_tt *ttm, uint64_t addr, uint32_t flags) argument
803 radeon_ttm_tt_has_userptr(struct ttm_tt *ttm) argument
813 radeon_ttm_tt_is_readonly(struct ttm_tt *ttm) argument
[all...]
/drivers/gpu/drm/vmwgfx/
H A Dvmwgfx_buffer.c29 #include <drm/ttm/ttm_bo_driver.h>
30 #include <drm/ttm/ttm_placement.h>
31 #include <drm/ttm/ttm_page_alloc.h>
394 vsgt->pages = vmw_tt->dma_ttm.ttm.pages;
395 vsgt->num_pages = vmw_tt->dma_ttm.ttm.num_pages;
504 container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm);
521 container_of(bo->ttm, struct vmw_ttm_tt, dma_ttm.ttm);
541 container_of(bo->ttm, struc
547 vmw_ttm_bind(struct ttm_tt *ttm, struct ttm_mem_reg *bo_mem) argument
581 vmw_ttm_unbind(struct ttm_tt *ttm) argument
604 vmw_ttm_destroy(struct ttm_tt *ttm) argument
622 vmw_ttm_populate(struct ttm_tt *ttm) argument
649 vmw_ttm_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A Dvmwgfx_gmrid_manager.c32 #include <drm/ttm/ttm_module.h>
33 #include <drm/ttm/ttm_bo_driver.h>
34 #include <drm/ttm/ttm_placement.h>
/drivers/gpu/drm/qxl/
H A Dqxl_ttm.c26 #include <ttm/ttm_bo_api.h>
27 #include <ttm/ttm_bo_driver.h>
28 #include <ttm/ttm_placement.h>
29 #include <ttm/ttm_page_alloc.h>
30 #include <ttm/ttm_module.h>
258 struct ttm_dma_tt ttm; member in struct:qxl_ttm_tt
263 static int qxl_ttm_backend_bind(struct ttm_tt *ttm, argument
266 struct qxl_ttm_tt *gtt = (void *)ttm;
269 if (!ttm->num_pages) {
271 ttm
277 qxl_ttm_backend_unbind(struct ttm_tt *ttm) argument
283 qxl_ttm_backend_destroy(struct ttm_tt *ttm) argument
297 qxl_ttm_tt_populate(struct ttm_tt *ttm) argument
311 qxl_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
/drivers/gpu/drm/ast/
H A Dast_ttm.c30 #include <ttm/ttm_page_alloc.h>
35 return container_of(bd, struct ast_private, ttm.bdev);
55 global_ref = &ast->ttm.mem_global_ref;
67 ast->ttm.bo_global_ref.mem_glob =
68 ast->ttm.mem_global_ref.object;
69 global_ref = &ast->ttm.bo_global_ref.ref;
77 drm_global_item_unref(&ast->ttm.mem_global_ref);
86 if (ast->ttm.mem_global_ref.release == NULL)
89 drm_global_item_unref(&ast->ttm.bo_global_ref.ref);
90 drm_global_item_unref(&ast->ttm
228 ast_ttm_tt_populate(struct ttm_tt *ttm) argument
233 ast_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
/drivers/gpu/drm/cirrus/
H A Dcirrus_ttm.c30 #include <ttm/ttm_page_alloc.h>
35 return container_of(bd, struct cirrus_device, ttm.bdev);
55 global_ref = &cirrus->ttm.mem_global_ref;
67 cirrus->ttm.bo_global_ref.mem_glob =
68 cirrus->ttm.mem_global_ref.object;
69 global_ref = &cirrus->ttm.bo_global_ref.ref;
77 drm_global_item_unref(&cirrus->ttm.mem_global_ref);
86 if (cirrus->ttm.mem_global_ref.release == NULL)
89 drm_global_item_unref(&cirrus->ttm.bo_global_ref.ref);
90 drm_global_item_unref(&cirrus->ttm
228 cirrus_ttm_tt_populate(struct ttm_tt *ttm) argument
233 cirrus_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A Dcirrus_drv.h18 #include <drm/ttm/ttm_bo_api.h>
19 #include <drm/ttm/ttm_bo_driver.h>
20 #include <drm/ttm/ttm_placement.h>
21 #include <drm/ttm/ttm_memory.h>
22 #include <drm/ttm/ttm_module.h>
148 } ttm; member in struct:cirrus_device
/drivers/gpu/drm/mgag200/
H A Dmgag200_ttm.c30 #include <ttm/ttm_page_alloc.h>
35 return container_of(bd, struct mga_device, ttm.bdev);
55 global_ref = &ast->ttm.mem_global_ref;
67 ast->ttm.bo_global_ref.mem_glob =
68 ast->ttm.mem_global_ref.object;
69 global_ref = &ast->ttm.bo_global_ref.ref;
77 drm_global_item_unref(&ast->ttm.mem_global_ref);
86 if (ast->ttm.mem_global_ref.release == NULL)
89 drm_global_item_unref(&ast->ttm.bo_global_ref.ref);
90 drm_global_item_unref(&ast->ttm
228 mgag200_ttm_tt_populate(struct ttm_tt *ttm) argument
233 mgag200_ttm_tt_unpopulate(struct ttm_tt *ttm) argument
[all...]
H A Dmgag200_drv.h19 #include <drm/ttm/ttm_bo_api.h>
20 #include <drm/ttm/ttm_bo_driver.h>
21 #include <drm/ttm/ttm_placement.h>
22 #include <drm/ttm/ttm_memory.h>
23 #include <drm/ttm/ttm_module.h>
215 } ttm; member in struct:mga_device
/drivers/gpu/drm/bochs/
H A Dbochs_mm.c16 return container_of(bd, struct bochs_device, ttm.bdev);
34 global_ref = &bochs->ttm.mem_global_ref;
46 bochs->ttm.bo_global_ref.mem_glob =
47 bochs->ttm.mem_global_ref.object;
48 global_ref = &bochs->ttm.bo_global_ref.ref;
56 drm_global_item_unref(&bochs->ttm.mem_global_ref);
65 if (bochs->ttm.mem_global_ref.release == NULL)
68 drm_global_item_unref(&bochs->ttm.bo_global_ref.ref);
69 drm_global_item_unref(&bochs->ttm.mem_global_ref);
70 bochs->ttm
[all...]
H A Dbochs.h12 #include <ttm/ttm_bo_driver.h>
13 #include <ttm/ttm_page_alloc.h>
80 /* ttm */
86 } ttm; member in struct:bochs_device

Completed in 203 milliseconds

123