[PATCH 08/11] drm/amdgpu: stop using TTM_MEMTYPE_FLAG_MAPPABLE

Christian König ckoenig.leichtzumerken at gmail.com
Tue Jul 21 14:30:25 UTC 2020


Am 21.07.20 um 11:28 schrieb daniel at ffwll.ch:
> On Tue, Jul 21, 2020 at 09:32:42AM +0200, Christian König wrote:
>> The driver does support some not-mapable resources, but
>> those are already handled correctly in the switch/case
>> statement in the code.
>>
>> Signed-off-by: Christian König <christian.koenig at amd.com>
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 11 ++++-------
>>   1 file changed, 4 insertions(+), 7 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> index 44fa8bc49d18..0dd5e802091d 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
>> @@ -84,7 +84,7 @@ static int amdgpu_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>>   	switch (type) {
>>   	case TTM_PL_SYSTEM:
>>   		/* System memory */
>> -		man->flags = TTM_MEMTYPE_FLAG_MAPPABLE;
>> +		man->flags = 0;
>>   		man->available_caching = TTM_PL_MASK_CACHING;
>>   		man->default_caching = TTM_PL_FLAG_CACHED;
>>   		break;
>> @@ -93,13 +93,12 @@ static int amdgpu_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>>   		man->func = &amdgpu_gtt_mgr_func;
>>   		man->available_caching = TTM_PL_MASK_CACHING;
>>   		man->default_caching = TTM_PL_FLAG_CACHED;
>> -		man->flags = TTM_MEMTYPE_FLAG_MAPPABLE;
>> +		man->flags = 0;
>>   		break;
>>   	case TTM_PL_VRAM:
>>   		/* "On-card" video ram */
>>   		man->func = &amdgpu_vram_mgr_func;
>> -		man->flags = TTM_MEMTYPE_FLAG_FIXED |
>> -			     TTM_MEMTYPE_FLAG_MAPPABLE;
>> +		man->flags = TTM_MEMTYPE_FLAG_FIXED;
>>   		man->available_caching = TTM_PL_FLAG_UNCACHED | TTM_PL_FLAG_WC;
>>   		man->default_caching = TTM_PL_FLAG_WC;
>>   		break;
>> @@ -796,7 +795,6 @@ static int amdgpu_bo_move(struct ttm_buffer_object *bo, bool evict,
>>    */
>>   static int amdgpu_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_reg *mem)
>>   {
>> -	struct ttm_mem_type_manager *man = &bdev->man[mem->mem_type];
>>   	struct amdgpu_device *adev = amdgpu_ttm_adev(bdev);
>>   	struct drm_mm_node *mm_node = mem->mm_node;
>>   
>> @@ -805,8 +803,7 @@ static int amdgpu_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_mem_
>>   	mem->bus.size = mem->num_pages << PAGE_SHIFT;
>>   	mem->bus.base = 0;
>>   	mem->bus.is_iomem = false;
>> -	if (!(man->flags & TTM_MEMTYPE_FLAG_MAPPABLE))
>> -		return -EINVAL;
> This check catches the various special on-board memories, or at least I
> couldnt' find where mmap for these is disallowed.

See the switch (mem->mem_type) just below, that return -EINVAL as well 
for those.

There is exactly zero functionality change here :)

Christian.

> -Daniel
>
>> +
>>   	switch (mem->mem_type) {
>>   	case TTM_PL_SYSTEM:
>>   		/* system memory */
>> -- 
>> 2.17.1
>>
>> _______________________________________________
>> dri-devel mailing list
>> dri-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/dri-devel



More information about the dri-devel mailing list