.. | .. |
---|
90 | 90 | */ |
---|
91 | 91 | static inline u64 radeon_bo_gpu_offset(struct radeon_bo *bo) |
---|
92 | 92 | { |
---|
93 | | - return bo->tbo.offset; |
---|
| 93 | + struct radeon_device *rdev; |
---|
| 94 | + u64 start = 0; |
---|
| 95 | + |
---|
| 96 | + rdev = radeon_get_rdev(bo->tbo.bdev); |
---|
| 97 | + |
---|
| 98 | + switch (bo->tbo.mem.mem_type) { |
---|
| 99 | + case TTM_PL_TT: |
---|
| 100 | + start = rdev->mc.gtt_start; |
---|
| 101 | + break; |
---|
| 102 | + case TTM_PL_VRAM: |
---|
| 103 | + start = rdev->mc.vram_start; |
---|
| 104 | + break; |
---|
| 105 | + } |
---|
| 106 | + |
---|
| 107 | + return (bo->tbo.mem.start << PAGE_SHIFT) + start; |
---|
94 | 108 | } |
---|
95 | 109 | |
---|
96 | 110 | static inline unsigned long radeon_bo_size(struct radeon_bo *bo) |
---|
.. | .. |
---|
116 | 130 | */ |
---|
117 | 131 | static inline u64 radeon_bo_mmap_offset(struct radeon_bo *bo) |
---|
118 | 132 | { |
---|
119 | | - return drm_vma_node_offset_addr(&bo->tbo.vma_node); |
---|
| 133 | + return drm_vma_node_offset_addr(&bo->tbo.base.vma_node); |
---|
120 | 134 | } |
---|
121 | 135 | |
---|
122 | 136 | extern int radeon_bo_wait(struct radeon_bo *bo, u32 *mem_type, |
---|
.. | .. |
---|
126 | 140 | unsigned long size, int byte_align, |
---|
127 | 141 | bool kernel, u32 domain, u32 flags, |
---|
128 | 142 | struct sg_table *sg, |
---|
129 | | - struct reservation_object *resv, |
---|
| 143 | + struct dma_resv *resv, |
---|
130 | 144 | struct radeon_bo **bo_ptr); |
---|
131 | 145 | extern int radeon_bo_kmap(struct radeon_bo *bo, void **ptr); |
---|
132 | 146 | extern void radeon_bo_kunmap(struct radeon_bo *bo); |
---|
.. | .. |
---|
151 | 165 | bool force_drop); |
---|
152 | 166 | extern void radeon_bo_move_notify(struct ttm_buffer_object *bo, |
---|
153 | 167 | bool evict, |
---|
154 | | - struct ttm_mem_reg *new_mem); |
---|
| 168 | + struct ttm_resource *new_mem); |
---|
155 | 169 | extern int radeon_bo_fault_reserve_notify(struct ttm_buffer_object *bo); |
---|
156 | 170 | extern int radeon_bo_get_surface_reg(struct radeon_bo *bo); |
---|
157 | 171 | extern void radeon_bo_fence(struct radeon_bo *bo, struct radeon_fence *fence, |
---|