mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-18 06:33:43 -04:00
drm/ttm: cleanup BO size handling v3
Based on an idea from Dave, but cleaned up a bit. We had multiple fields for essentially the same thing. Now bo->base.size is the original size of the BO in arbitrary units, usually bytes. bo->mem.num_pages is the size in number of pages in the resource domain of bo->mem.mem_type. v2: use the GEM object size instead of the BO size v3: fix printks in some places Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Huang Rui <ray.huang@amd.com> (v1) Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Link: https://patchwork.freedesktop.org/patch/406831/
This commit is contained in:
@@ -223,7 +223,7 @@ int vmw_bo_pin_in_start_of_vram(struct vmw_private *dev_priv,
|
||||
uint32_t new_flags;
|
||||
|
||||
place = vmw_vram_placement.placement[0];
|
||||
place.lpfn = bo->num_pages;
|
||||
place.lpfn = bo->mem.num_pages;
|
||||
placement.num_placement = 1;
|
||||
placement.placement = &place;
|
||||
placement.num_busy_placement = 1;
|
||||
@@ -244,7 +244,7 @@ int vmw_bo_pin_in_start_of_vram(struct vmw_private *dev_priv,
|
||||
* that situation.
|
||||
*/
|
||||
if (bo->mem.mem_type == TTM_PL_VRAM &&
|
||||
bo->mem.start < bo->num_pages &&
|
||||
bo->mem.start < bo->mem.num_pages &&
|
||||
bo->mem.start > 0 &&
|
||||
buf->base.pin_count == 0) {
|
||||
ctx.interruptible = false;
|
||||
@@ -391,7 +391,7 @@ void *vmw_bo_map_and_cache(struct vmw_buffer_object *vbo)
|
||||
if (virtual)
|
||||
return virtual;
|
||||
|
||||
ret = ttm_bo_kmap(bo, 0, bo->num_pages, &vbo->map);
|
||||
ret = ttm_bo_kmap(bo, 0, bo->mem.num_pages, &vbo->map);
|
||||
if (ret)
|
||||
DRM_ERROR("Buffer object map failed: %d.\n", ret);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user