Lines Matching defs:level
38 unsigned int level;
42 * amdgpu_vm_pt_level_shift - return the addr shift for each level
45 * @level: VMPT level
48 * The number of bits the pfn needs to be right shifted for a level.
51 unsigned int level)
53 switch (level) {
58 return 9 * (AMDGPU_VM_PDB0 - level) +
71 * @level: VMPT level
77 unsigned int level)
82 if (level == adev->vm_manager.root_level)
86 else if (level != AMDGPU_VM_PTB)
98 * @level: VMPT level
104 unsigned int level)
106 if (level <= adev->vm_manager.root_level)
108 else if (level != AMDGPU_VM_PTB)
118 * @level: VMPT level
124 unsigned int level)
126 return AMDGPU_GPU_PAGE_ALIGN(amdgpu_vm_pt_num_entries(adev, level) * 8);
165 cursor->level = adev->vm_manager.root_level;
183 if ((cursor->level == AMDGPU_VM_PTB) || !cursor->entry ||
187 mask = amdgpu_vm_pt_entries_mask(adev, cursor->level);
188 shift = amdgpu_vm_pt_level_shift(adev, cursor->level);
190 ++cursor->level;
219 shift = amdgpu_vm_pt_level_shift(adev, cursor->level - 1);
220 num_entries = amdgpu_vm_pt_num_entries(adev, cursor->level - 1);
246 --cursor->level;
364 unsigned int level = adev->vm_manager.root_level;
376 ++level;
378 ++level;
409 if (level != AMDGPU_VM_PTB) {
412 amdgpu_gmc_get_vm_pde(adev, level,
436 * @level: the page table level
442 int level, bool immediate, struct amdgpu_bo_vm **vmbo,
450 bp.size = amdgpu_vm_pt_size(adev, level);
462 if (level < AMDGPU_VM_PTB)
463 num_entries = amdgpu_vm_pt_num_entries(adev, level);
510 r = amdgpu_vm_pt_create(adev, vm, cursor->level, immediate, &pt,
578 * amdgpu_vm_pt_add_list - add PD/PT level to the flush list
619 * amdgpu_vm_pde_update - update a single level in the hierarchy
633 unsigned int level;
639 for (level = 0, pbo = bo->parent; pbo; ++level)
642 level += params->adev->vm_manager.root_level;
643 amdgpu_gmc_get_pde_for_bo(entry->bo, level, &pt, &flags);
673 * Make sure to set the right flags for the PTEs at the desired level.
677 unsigned int level,
684 if (level != AMDGPU_VM_PTB) {
686 amdgpu_gmc_get_vm_pde(adev, level, &addr, &flags);
706 if (level == AMDGPU_VM_PTB)
819 shift = amdgpu_vm_pt_level_shift(adev, cursor.level);
820 parent_shift = amdgpu_vm_pt_level_shift(adev, cursor.level - 1);
828 if (cursor.level != AMDGPU_VM_PTB) {
834 /* We can't use this level when the fragment size is
842 * shift we should go up one level and check it again.
856 * level.
869 mask = amdgpu_vm_pt_entries_mask(adev, cursor.level);
872 if (cursor.level < AMDGPU_VM_PTB && params->unlocked)
889 /* This can happen when we set higher level PDs to
900 cursor.level, pe_start, dst,
933 /* or just move on to the next on the same level. */