• Home
  • Raw
  • Download

Lines Matching refs:rbo

101 void radeon_ttm_placement_from_domain(struct radeon_bo *rbo, u32 domain)  in radeon_ttm_placement_from_domain()  argument
105 rbo->placement.placement = rbo->placements; in radeon_ttm_placement_from_domain()
106 rbo->placement.busy_placement = rbo->placements; in radeon_ttm_placement_from_domain()
111 if ((rbo->flags & RADEON_GEM_NO_CPU_ACCESS) && in radeon_ttm_placement_from_domain()
112 rbo->rdev->mc.visible_vram_size < rbo->rdev->mc.real_vram_size) { in radeon_ttm_placement_from_domain()
113 rbo->placements[c].fpfn = in radeon_ttm_placement_from_domain()
114 rbo->rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_ttm_placement_from_domain()
115 rbo->placements[c].mem_type = TTM_PL_VRAM; in radeon_ttm_placement_from_domain()
116 rbo->placements[c++].flags = TTM_PL_FLAG_WC | in radeon_ttm_placement_from_domain()
120 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
121 rbo->placements[c].mem_type = TTM_PL_VRAM; in radeon_ttm_placement_from_domain()
122 rbo->placements[c++].flags = TTM_PL_FLAG_WC | in radeon_ttm_placement_from_domain()
127 if (rbo->flags & RADEON_GEM_GTT_UC) { in radeon_ttm_placement_from_domain()
128 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
129 rbo->placements[c].mem_type = TTM_PL_TT; in radeon_ttm_placement_from_domain()
130 rbo->placements[c++].flags = TTM_PL_FLAG_UNCACHED; in radeon_ttm_placement_from_domain()
132 } else if ((rbo->flags & RADEON_GEM_GTT_WC) || in radeon_ttm_placement_from_domain()
133 (rbo->rdev->flags & RADEON_IS_AGP)) { in radeon_ttm_placement_from_domain()
134 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
135 rbo->placements[c].mem_type = TTM_PL_TT; in radeon_ttm_placement_from_domain()
136 rbo->placements[c++].flags = TTM_PL_FLAG_WC | in radeon_ttm_placement_from_domain()
139 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
140 rbo->placements[c].mem_type = TTM_PL_TT; in radeon_ttm_placement_from_domain()
141 rbo->placements[c++].flags = TTM_PL_FLAG_CACHED; in radeon_ttm_placement_from_domain()
146 if (rbo->flags & RADEON_GEM_GTT_UC) { in radeon_ttm_placement_from_domain()
147 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
148 rbo->placements[c].mem_type = TTM_PL_SYSTEM; in radeon_ttm_placement_from_domain()
149 rbo->placements[c++].flags = TTM_PL_FLAG_UNCACHED; in radeon_ttm_placement_from_domain()
151 } else if ((rbo->flags & RADEON_GEM_GTT_WC) || in radeon_ttm_placement_from_domain()
152 rbo->rdev->flags & RADEON_IS_AGP) { in radeon_ttm_placement_from_domain()
153 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
154 rbo->placements[c].mem_type = TTM_PL_SYSTEM; in radeon_ttm_placement_from_domain()
155 rbo->placements[c++].flags = TTM_PL_FLAG_WC | in radeon_ttm_placement_from_domain()
158 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
159 rbo->placements[c].mem_type = TTM_PL_SYSTEM; in radeon_ttm_placement_from_domain()
160 rbo->placements[c++].flags = TTM_PL_FLAG_CACHED; in radeon_ttm_placement_from_domain()
164 rbo->placements[c].fpfn = 0; in radeon_ttm_placement_from_domain()
165 rbo->placements[c].mem_type = TTM_PL_SYSTEM; in radeon_ttm_placement_from_domain()
166 rbo->placements[c++].flags = TTM_PL_MASK_CACHING; in radeon_ttm_placement_from_domain()
169 rbo->placement.num_placement = c; in radeon_ttm_placement_from_domain()
170 rbo->placement.num_busy_placement = c; in radeon_ttm_placement_from_domain()
173 if ((rbo->flags & RADEON_GEM_CPU_ACCESS) && in radeon_ttm_placement_from_domain()
174 (rbo->placements[i].mem_type == TTM_PL_VRAM) && in radeon_ttm_placement_from_domain()
175 !rbo->placements[i].fpfn) in radeon_ttm_placement_from_domain()
176 rbo->placements[i].lpfn = in radeon_ttm_placement_from_domain()
177 rbo->rdev->mc.visible_vram_size >> PAGE_SHIFT; in radeon_ttm_placement_from_domain()
179 rbo->placements[i].lpfn = 0; in radeon_ttm_placement_from_domain()
780 struct radeon_bo *rbo; in radeon_bo_move_notify() local
785 rbo = container_of(bo, struct radeon_bo, tbo); in radeon_bo_move_notify()
786 radeon_bo_check_tiling(rbo, 0, 1); in radeon_bo_move_notify()
787 radeon_vm_bo_invalidate(rbo->rdev, rbo); in radeon_bo_move_notify()
793 radeon_update_memory_usage(rbo, bo->mem.mem_type, -1); in radeon_bo_move_notify()
794 radeon_update_memory_usage(rbo, new_mem->mem_type, 1); in radeon_bo_move_notify()
801 struct radeon_bo *rbo; in radeon_bo_fault_reserve_notify() local
807 rbo = container_of(bo, struct radeon_bo, tbo); in radeon_bo_fault_reserve_notify()
808 radeon_bo_check_tiling(rbo, 0, 0); in radeon_bo_fault_reserve_notify()
809 rdev = rbo->rdev; in radeon_bo_fault_reserve_notify()
819 if (rbo->pin_count > 0) in radeon_bo_fault_reserve_notify()
823 radeon_ttm_placement_from_domain(rbo, RADEON_GEM_DOMAIN_VRAM); in radeon_bo_fault_reserve_notify()
825 for (i = 0; i < rbo->placement.num_placement; i++) { in radeon_bo_fault_reserve_notify()
827 if ((rbo->placements[i].mem_type == TTM_PL_VRAM) && in radeon_bo_fault_reserve_notify()
828 (!rbo->placements[i].lpfn || rbo->placements[i].lpfn > lpfn)) in radeon_bo_fault_reserve_notify()
829 rbo->placements[i].lpfn = lpfn; in radeon_bo_fault_reserve_notify()
831 r = ttm_bo_validate(bo, &rbo->placement, &ctx); in radeon_bo_fault_reserve_notify()
833 radeon_ttm_placement_from_domain(rbo, RADEON_GEM_DOMAIN_GTT); in radeon_bo_fault_reserve_notify()
834 return ttm_bo_validate(bo, &rbo->placement, &ctx); in radeon_bo_fault_reserve_notify()