diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c index feece0a491a3..1985c08413c6 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c @@ -694,8 +694,12 @@ int amdgpu_bo_pin_restricted(struct amdgpu_bo *bo, u32 domain,  		return -EINVAL;  	/* A shared bo cannot be migrated to VRAM */ -	if (bo->prime_shared_count && (domain == AMDGPU_GEM_DOMAIN_VRAM)) -		return -EINVAL; +	if (bo->prime_shared_count) { +		if (domain & AMDGPU_GEM_DOMAIN_GTT) +			domain = AMDGPU_GEM_DOMAIN_GTT; +		else +			return -EINVAL; +	}  	if (bo->pin_count) {  		uint32_t mem_type = bo->tbo.mem.mem_type;  | 
