Lines Matching refs:rdev
41 int radeon_ttm_init(struct radeon_device *rdev);
42 void radeon_ttm_fini(struct radeon_device *rdev);
53 struct radeon_device *rdev = bo->rdev; in radeon_update_memory_usage() local
59 atomic64_add(size, &rdev->gtt_usage); in radeon_update_memory_usage()
61 atomic64_sub(size, &rdev->gtt_usage); in radeon_update_memory_usage()
65 atomic64_add(size, &rdev->vram_usage); in radeon_update_memory_usage()
67 atomic64_sub(size, &rdev->vram_usage); in radeon_update_memory_usage()
80 mutex_lock(&bo->rdev->gem.mutex); in radeon_ttm_bo_destroy()
82 mutex_unlock(&bo->rdev->gem.mutex); in radeon_ttm_bo_destroy()
107 rbo->rdev->mc.visible_vram_size < rbo->rdev->mc.real_vram_size) { in radeon_ttm_placement_from_domain()
109 rbo->rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_ttm_placement_from_domain()
128 (rbo->rdev->flags & RADEON_IS_AGP)) { in radeon_ttm_placement_from_domain()
147 rbo->rdev->flags & RADEON_IS_AGP) { in radeon_ttm_placement_from_domain()
172 rbo->rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_ttm_placement_from_domain()
178 int radeon_bo_create(struct radeon_device *rdev, in radeon_bo_create() argument
201 acc_size = ttm_bo_dma_acc_size(&rdev->mman.bdev, size, in radeon_bo_create()
207 r = drm_gem_object_init(rdev->ddev, &bo->gem_base, size); in radeon_bo_create()
212 bo->rdev = rdev; in radeon_bo_create()
222 if (!(rdev->flags & RADEON_IS_PCIE)) in radeon_bo_create()
228 if (rdev->family >= CHIP_RV610 && rdev->family <= CHIP_RV635) in radeon_bo_create()
259 down_read(&rdev->pm.mclk_lock); in radeon_bo_create()
260 r = ttm_bo_init(&rdev->mman.bdev, &bo->tbo, size, type, in radeon_bo_create()
263 up_read(&rdev->pm.mclk_lock); in radeon_bo_create()
318 struct radeon_device *rdev; in radeon_bo_unref() local
322 rdev = (*bo)->rdev; in radeon_bo_unref()
346 domain_start = bo->rdev->mc.vram_start; in radeon_bo_pin_restricted()
348 domain_start = bo->rdev->mc.gtt_start; in radeon_bo_pin_restricted()
360 (!max_offset || max_offset > bo->rdev->mc.visible_vram_size)) in radeon_bo_pin_restricted()
362 bo->rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_bo_pin_restricted()
375 bo->rdev->vram_pin_size += radeon_bo_size(bo); in radeon_bo_pin_restricted()
377 bo->rdev->gart_pin_size += radeon_bo_size(bo); in radeon_bo_pin_restricted()
379 dev_err(bo->rdev->dev, "%p pin failed\n", bo); in radeon_bo_pin_restricted()
394 dev_warn(bo->rdev->dev, "%p unpin not necessary\n", bo); in radeon_bo_unpin()
407 bo->rdev->vram_pin_size -= radeon_bo_size(bo); in radeon_bo_unpin()
409 bo->rdev->gart_pin_size -= radeon_bo_size(bo); in radeon_bo_unpin()
411 dev_err(bo->rdev->dev, "%p validate failed for unpin\n", bo); in radeon_bo_unpin()
416 int radeon_bo_evict_vram(struct radeon_device *rdev) in radeon_bo_evict_vram() argument
419 if (0 && (rdev->flags & RADEON_IS_IGP)) { in radeon_bo_evict_vram()
420 if (rdev->mc.igp_sideport_enabled == false) in radeon_bo_evict_vram()
424 return ttm_bo_evict_mm(&rdev->mman.bdev, TTM_PL_VRAM); in radeon_bo_evict_vram()
427 void radeon_bo_force_delete(struct radeon_device *rdev) in radeon_bo_force_delete() argument
431 if (list_empty(&rdev->gem.objects)) { in radeon_bo_force_delete()
434 dev_err(rdev->dev, "Userspace still has active objects !\n"); in radeon_bo_force_delete()
435 list_for_each_entry_safe(bo, n, &rdev->gem.objects, list) { in radeon_bo_force_delete()
436 dev_err(rdev->dev, "%p %p %lu %lu force free\n", in radeon_bo_force_delete()
439 mutex_lock(&bo->rdev->gem.mutex); in radeon_bo_force_delete()
441 mutex_unlock(&bo->rdev->gem.mutex); in radeon_bo_force_delete()
447 int radeon_bo_init(struct radeon_device *rdev) in radeon_bo_init() argument
450 if (!rdev->fastfb_working) { in radeon_bo_init()
451 rdev->mc.vram_mtrr = arch_phys_wc_add(rdev->mc.aper_base, in radeon_bo_init()
452 rdev->mc.aper_size); in radeon_bo_init()
455 rdev->mc.mc_vram_size >> 20, in radeon_bo_init()
456 (unsigned long long)rdev->mc.aper_size >> 20); in radeon_bo_init()
458 rdev->mc.vram_width, rdev->mc.vram_is_ddr ? 'D' : 'S'); in radeon_bo_init()
459 return radeon_ttm_init(rdev); in radeon_bo_init()
462 void radeon_bo_fini(struct radeon_device *rdev) in radeon_bo_fini() argument
464 radeon_ttm_fini(rdev); in radeon_bo_fini()
465 arch_phys_wc_del(rdev->mc.vram_mtrr); in radeon_bo_fini()
470 static u64 radeon_bo_get_threshold_for_moves(struct radeon_device *rdev) in radeon_bo_get_threshold_for_moves() argument
472 u64 real_vram_size = rdev->mc.real_vram_size; in radeon_bo_get_threshold_for_moves()
473 u64 vram_usage = atomic64_read(&rdev->vram_usage); in radeon_bo_get_threshold_for_moves()
520 int radeon_bo_list_validate(struct radeon_device *rdev, in radeon_bo_list_validate() argument
528 u64 bytes_moved_threshold = radeon_bo_get_threshold_for_moves(rdev); in radeon_bo_list_validate()
564 initial_bytes_moved = atomic64_read(&rdev->num_bytes_moved); in radeon_bo_list_validate()
566 bytes_moved += atomic64_read(&rdev->num_bytes_moved) - in radeon_bo_list_validate()
593 struct radeon_device *rdev = bo->rdev; in radeon_bo_get_surface_reg() local
605 reg = &rdev->surface_regs[bo->surface_reg]; in radeon_bo_get_surface_reg()
613 reg = &rdev->surface_regs[i]; in radeon_bo_get_surface_reg()
627 reg = &rdev->surface_regs[steal]; in radeon_bo_get_surface_reg()
640 radeon_set_surface_reg(rdev, i, bo->tiling_flags, bo->pitch, in radeon_bo_get_surface_reg()
648 struct radeon_device *rdev = bo->rdev; in radeon_bo_clear_surface_reg() local
654 reg = &rdev->surface_regs[bo->surface_reg]; in radeon_bo_clear_surface_reg()
655 radeon_clear_surface_reg(rdev, bo->surface_reg); in radeon_bo_clear_surface_reg()
664 struct radeon_device *rdev = bo->rdev; in radeon_bo_set_tiling_flags() local
667 if (rdev->family >= CHIP_CEDAR) { in radeon_bo_set_tiling_flags()
772 radeon_vm_bo_invalidate(rbo->rdev, rbo); in radeon_bo_move_notify()
784 struct radeon_device *rdev; in radeon_bo_fault_reserve_notify() local
793 rdev = rbo->rdev; in radeon_bo_fault_reserve_notify()
799 if ((offset + size) <= rdev->mc.visible_vram_size) in radeon_bo_fault_reserve_notify()
804 lpfn = rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_bo_fault_reserve_notify()
821 if ((offset + size) > rdev->mc.visible_vram_size) in radeon_bo_fault_reserve_notify()