drm/amdgpu: cleanup amdgpu_bo_create()
authorNirmoy Das <nirmoy.das@amd.com>
Wed, 21 Apr 2021 16:09:46 +0000 (18:09 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 23 Apr 2021 21:18:47 +0000 (17:18 -0400)
Remove shadow bo related code as vm code is creating shadow bo
using proper API. Without shadow bo code, amdgpu_bo_create() is basically
a wrapper around amdgpu_bo_do_create(). So rename amdgpu_bo_do_create()
to amdgpu_bo_create().

Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c

index 9cdeb20..39f88e4 100644 (file)
@@ -515,7 +515,18 @@ bool amdgpu_bo_support_uswc(u64 bo_flags)
 #endif
 }
 
-static int amdgpu_bo_do_create(struct amdgpu_device *adev,
+/**
+ * amdgpu_bo_create - create an &amdgpu_bo buffer object
+ * @adev: amdgpu device object
+ * @bp: parameters to be used for the buffer object
+ * @bo_ptr: pointer to the buffer object pointer
+ *
+ * Creates an &amdgpu_bo buffer object.
+ *
+ * Returns:
+ * 0 for success or a negative error code on failure.
+ */
+int amdgpu_bo_create(struct amdgpu_device *adev,
                               struct amdgpu_bo_param *bp,
                               struct amdgpu_bo **bo_ptr)
 {
@@ -644,7 +655,7 @@ int amdgpu_bo_create_shadow(struct amdgpu_device *adev,
        bp.resv = bo->tbo.base.resv;
        bp.bo_ptr_size = sizeof(struct amdgpu_bo);
 
-       r = amdgpu_bo_do_create(adev, &bp, &bo->shadow);
+       r = amdgpu_bo_create(adev, &bp, &bo->shadow);
        if (!r) {
                bo->shadow->parent = amdgpu_bo_ref(bo);
                mutex_lock(&adev->shadow_list_lock);
@@ -656,50 +667,6 @@ int amdgpu_bo_create_shadow(struct amdgpu_device *adev,
 }
 
 /**
- * amdgpu_bo_create - create an &amdgpu_bo buffer object
- * @adev: amdgpu device object
- * @bp: parameters to be used for the buffer object
- * @bo_ptr: pointer to the buffer object pointer
- *
- * Creates an &amdgpu_bo buffer object; and if requested, also creates a
- * shadow object.
- * Shadow object is used to backup the original buffer object, and is always
- * in GTT.
- *
- * Returns:
- * 0 for success or a negative error code on failure.
- */
-int amdgpu_bo_create(struct amdgpu_device *adev,
-                    struct amdgpu_bo_param *bp,
-                    struct amdgpu_bo **bo_ptr)
-{
-       u64 flags = bp->flags;
-       int r;
-
-       bp->flags = bp->flags & ~AMDGPU_GEM_CREATE_SHADOW;
-
-       r = amdgpu_bo_do_create(adev, bp, bo_ptr);
-       if (r)
-               return r;
-
-       if ((flags & AMDGPU_GEM_CREATE_SHADOW) && !(adev->flags & AMD_IS_APU)) {
-               if (!bp->resv)
-                       WARN_ON(dma_resv_lock((*bo_ptr)->tbo.base.resv,
-                                                       NULL));
-
-               r = amdgpu_bo_create_shadow(adev, bp->size, *bo_ptr);
-
-               if (!bp->resv)
-                       dma_resv_unlock((*bo_ptr)->tbo.base.resv);
-
-               if (r)
-                       amdgpu_bo_unref(bo_ptr);
-       }
-
-       return r;
-}
-
-/**
  * amdgpu_bo_create_user - create an &amdgpu_bo_user buffer object
  * @adev: amdgpu device object
  * @bp: parameters to be used for the buffer object
@@ -720,7 +687,7 @@ int amdgpu_bo_create_user(struct amdgpu_device *adev,
 
        bp->flags = bp->flags & ~AMDGPU_GEM_CREATE_SHADOW;
        bp->bo_ptr_size = sizeof(struct amdgpu_bo_user);
-       r = amdgpu_bo_do_create(adev, bp, &bo_ptr);
+       r = amdgpu_bo_create(adev, bp, &bo_ptr);
        if (r)
                return r;