All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nirmoy <nirmodas@amd.com>
To: "Christian König" <christian.koenig@amd.com>,
	"Nirmoy Das" <nirmoy.das@amd.com>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 3/3] drm/amdgpu: use tiling_flags of struct amdgpu_bo_user
Date: Fri, 5 Mar 2021 14:27:38 +0100	[thread overview]
Message-ID: <091cca4b-1067-6827-c458-a60db8be9cb7@amd.com> (raw)
In-Reply-To: <d37e05ac-2a07-4e9d-1c38-e3909c00410b@amd.com>


On 3/5/21 2:08 PM, Christian König wrote:
> Am 05.03.21 um 13:56 schrieb Nirmoy Das:
>> This flag is only needed for BOs created by amdgpu_gem_object_create(),
>> so we can remove tiling_flags from the base class.
>>
>> Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 19 +++++++++++++++++--
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_object.h |  1 -
>>   2 files changed, 17 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c 
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
>> index f21679f38383..c19cb6863966 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
>> @@ -1190,12 +1190,19 @@ int amdgpu_bo_fbdev_mmap(struct amdgpu_bo *bo,
>>   int amdgpu_bo_set_tiling_flags(struct amdgpu_bo *bo, u64 tiling_flags)
>>   {
>>       struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
>> +    struct amdgpu_bo_user *ubo;
>> +
>> +    if (!(bo->flags & AMDGPU_GEM_CREATE_USER)) {
>
> You don't need the AMDGPU_GEM_CREATE_USER flag, just test TTMs BO type.


Okay I will remove AMDGPU_GEM_CREATE_USER flag completely.


>
>> +        DRM_ERROR("can not set tiling_flags for a non-amdgpu_bo_user 
>> type BO\n");
>> +        return -EINVAL;
>> +    }
>>         if (adev->family <= AMDGPU_FAMILY_CZ &&
>>           AMDGPU_TILING_GET(tiling_flags, TILE_SPLIT) > 6)
>>           return -EINVAL;
>>   -    bo->tiling_flags = tiling_flags;
>> +    ubo = container_of((bo), struct amdgpu_bo_user, bo);
>> +    ubo->tiling_flags = tiling_flags;
>>       return 0;
>>   }
>>   @@ -1209,10 +1216,18 @@ int amdgpu_bo_set_tiling_flags(struct 
>> amdgpu_bo *bo, u64 tiling_flags)
>>    */
>>   void amdgpu_bo_get_tiling_flags(struct amdgpu_bo *bo, u64 
>> *tiling_flags)
>>   {
>> +    struct amdgpu_bo_user *ubo;
>> +
>> +    if (!(bo->flags & AMDGPU_GEM_CREATE_USER)) {
>> +        DRM_ERROR("can not get tiling_flags for a non-amdgpu_bo_user 
>> type BO\n");
>> +        return;
>> +    }
>> +
>>       dma_resv_assert_held(bo->tbo.base.resv);
>> +    ubo = container_of((bo), struct amdgpu_bo_user, bo);
>>         if (tiling_flags)
>> -        *tiling_flags = bo->tiling_flags;
>> +        *tiling_flags = ubo->tiling_flags;
>>   }
>>     /**
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h 
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
>> index 332e269c3fd1..7164c0799534 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
>> @@ -91,7 +91,6 @@ struct amdgpu_bo {
>>       struct ttm_bo_kmap_obj        kmap;
>>       u64                flags;
>>       unsigned            pin_count;
>> -    u64                tiling_flags;
>>       u64                metadata_flags;
>>       void                *metadata;
>>       u32                metadata_size;
>
> BTW: The metadata can be moved to the user BOs as well!


I resend with metadata members moved to the user BO.


Thanks,

Nirmoy

>
> Thanks,
> Christian.
>
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

  reply	other threads:[~2021-03-05 13:27 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-05 12:56 [PATCH 1/3] drm/amdgpu: introduce struct amdgpu_bo_user Nirmoy Das
2021-03-05 12:56 ` [PATCH 2/3] drm/amdgpu: use amdgpu_bo_create_user() for gem object Nirmoy Das
2021-03-05 12:56 ` [PATCH 3/3] drm/amdgpu: use tiling_flags of struct amdgpu_bo_user Nirmoy Das
2021-03-05 13:08   ` Christian König
2021-03-05 13:27     ` Nirmoy [this message]
2021-03-05 13:05 ` [PATCH 1/3] drm/amdgpu: introduce " Christian König

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=091cca4b-1067-6827-c458-a60db8be9cb7@amd.com \
    --to=nirmodas@amd.com \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=nirmoy.das@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.