Lines Matching refs:mem

227 	nvbo->bo.mem.num_pages = size >> PAGE_SHIFT;  in nouveau_bo_new()
268 nvbo->bo.mem.num_pages < vram_pages / 4) { in set_placement_range()
327 if (bo->mem.mem_type == TTM_PL_VRAM) { in nouveau_bo_pin()
328 struct nvkm_mem *mem = bo->mem.mm_node; in nouveau_bo_pin() local
329 if (!list_is_singular(&mem->regions)) in nouveau_bo_pin()
338 if (!(memtype & (1 << bo->mem.mem_type)) || evict) { in nouveau_bo_pin()
341 1 << bo->mem.mem_type, memtype); in nouveau_bo_pin()
368 switch (bo->mem.mem_type) { in nouveau_bo_pin()
370 drm->gem.vram_available -= bo->mem.size; in nouveau_bo_pin()
373 drm->gem.gart_available -= bo->mem.size; in nouveau_bo_pin()
402 nouveau_bo_placement_set(nvbo, bo->mem.placement, 0); in nouveau_bo_unpin()
406 switch (bo->mem.mem_type) { in nouveau_bo_unpin()
408 drm->gem.vram_available += bo->mem.size; in nouveau_bo_unpin()
411 drm->gem.gart_available += bo->mem.size; in nouveau_bo_unpin()
437 ret = ttm_bo_kmap(&nvbo->bo, 0, nvbo->bo.mem.num_pages, in nouveau_bo_map()
515 _nouveau_bo_mem_index(struct nouveau_bo *nvbo, unsigned index, void *mem, u8 sz) in _nouveau_bo_mem_index() argument
518 u8 *m = mem; in _nouveau_bo_mem_index()
540 u16 *mem = ttm_kmap_obj_virtual(&nvbo->kmap, &is_iomem); in nouveau_bo_wr16() local
542 mem = nouveau_bo_mem_index(nvbo, index, mem); in nouveau_bo_wr16()
545 iowrite16_native(val, (void __force __iomem *)mem); in nouveau_bo_wr16()
547 *mem = val; in nouveau_bo_wr16()
554 u32 *mem = ttm_kmap_obj_virtual(&nvbo->kmap, &is_iomem); in nouveau_bo_rd32() local
556 mem = nouveau_bo_mem_index(nvbo, index, mem); in nouveau_bo_rd32()
559 return ioread32_native((void __force __iomem *)mem); in nouveau_bo_rd32()
561 return *mem; in nouveau_bo_rd32()
568 u32 *mem = ttm_kmap_obj_virtual(&nvbo->kmap, &is_iomem); in nouveau_bo_wr32() local
570 mem = nouveau_bo_mem_index(nvbo, index, mem); in nouveau_bo_wr32()
573 iowrite32_native(val, (void __force __iomem *)mem); in nouveau_bo_wr32()
575 *mem = val; in nouveau_bo_wr32()
668 switch (bo->mem.mem_type) { in nouveau_bo_evict_flags()
982 struct nouveau_channel *chan, struct ttm_mem_reg *mem) in nouveau_bo_mem_ctxdma() argument
984 if (mem->mem_type == TTM_PL_TT) in nouveau_bo_mem_ctxdma()
1037 struct ttm_mem_reg *mem) in nouveau_bo_move_prep() argument
1039 struct nvkm_mem *old_node = bo->mem.mm_node; in nouveau_bo_move_prep()
1040 struct nvkm_mem *new_node = mem->mm_node; in nouveau_bo_move_prep()
1041 u64 size = (u64)mem->num_pages << PAGE_SHIFT; in nouveau_bo_move_prep()
1084 ret = drm->ttm.move(chan, bo, &bo->mem, new_mem); in nouveau_bo_move_m2mf()
1294 struct ttm_mem_reg *old_mem = &bo->mem; in nouveau_bo_move()
1309 BUG_ON(bo->mem.mm_node != NULL); in nouveau_bo_move()
1310 bo->mem = *new_mem; in nouveau_bo_move()
1355 nouveau_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem) in nouveau_ttm_io_mem_reserve() argument
1357 struct ttm_mem_type_manager *man = &bdev->man[mem->mem_type]; in nouveau_ttm_io_mem_reserve()
1359 struct nvkm_mem *node = mem->mm_node; in nouveau_ttm_io_mem_reserve()
1362 mem->bus.addr = NULL; in nouveau_ttm_io_mem_reserve()
1363 mem->bus.offset = 0; in nouveau_ttm_io_mem_reserve()
1364 mem->bus.size = mem->num_pages << PAGE_SHIFT; in nouveau_ttm_io_mem_reserve()
1365 mem->bus.base = 0; in nouveau_ttm_io_mem_reserve()
1366 mem->bus.is_iomem = false; in nouveau_ttm_io_mem_reserve()
1369 switch (mem->mem_type) { in nouveau_ttm_io_mem_reserve()
1376 mem->bus.offset = mem->start << PAGE_SHIFT; in nouveau_ttm_io_mem_reserve()
1377 mem->bus.base = drm->agp.base; in nouveau_ttm_io_mem_reserve()
1378 mem->bus.is_iomem = !drm->dev->agp->cant_use_aperture; in nouveau_ttm_io_mem_reserve()
1386 mem->bus.offset = mem->start << PAGE_SHIFT; in nouveau_ttm_io_mem_reserve()
1387 mem->bus.base = nv_device_resource_start(nvxx_device(&drm->device), 1); in nouveau_ttm_io_mem_reserve()
1388 mem->bus.is_iomem = true; in nouveau_ttm_io_mem_reserve()
1397 mem->bus.offset = node->bar_vma.offset; in nouveau_ttm_io_mem_reserve()
1407 nouveau_ttm_io_mem_free(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem) in nouveau_ttm_io_mem_free() argument
1411 struct nvkm_mem *node = mem->mm_node; in nouveau_ttm_io_mem_free()
1431 if (bo->mem.mem_type != TTM_PL_VRAM) { in nouveau_ttm_fault_reserve_notify()
1436 if (bo->mem.mem_type == TTM_PL_SYSTEM) { in nouveau_ttm_fault_reserve_notify()
1448 bo->mem.start + bo->mem.num_pages < mappable) in nouveau_ttm_fault_reserve_notify()
1634 const u32 size = nvbo->bo.mem.num_pages << PAGE_SHIFT; in nouveau_bo_vma_add()
1642 if ( nvbo->bo.mem.mem_type != TTM_PL_SYSTEM && in nouveau_bo_vma_add()
1643 (nvbo->bo.mem.mem_type == TTM_PL_VRAM || in nouveau_bo_vma_add()
1645 nvkm_vm_map(vma, nvbo->bo.mem.mm_node); in nouveau_bo_vma_add()
1656 if (nvbo->bo.mem.mem_type != TTM_PL_SYSTEM) in nouveau_bo_vma_del()