[PATCH 2/8] drm/radeon: stop using TTM_MEMTYPE_FLAG_MAPPABLE

Christian König ckoenig.leichtzumerken at gmail.com
Mon Jul 20 11:02:17 UTC 2020


Am 19.07.20 um 14:57 schrieb Chauhan, Madhav:
> [AMD Public Use]
>
> -----Original Message-----
> From: Christian König <ckoenig.leichtzumerken at gmail.com>
> Sent: Thursday, July 16, 2020 6:21 PM
> To: dri-devel at lists.freedesktop.org
> Cc: Chauhan, Madhav <Madhav.Chauhan at amd.com>
> Subject: [PATCH 2/8] drm/radeon: stop using TTM_MEMTYPE_FLAG_MAPPABLE
>
> The driver doesn't expose any not-mapable memory resources.
>
> Looks like spell mistake in "mapable". Please check.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
>   drivers/gpu/drm/radeon/radeon_ttm.c | 13 ++++---------
>   1 file changed, 4 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
> index 54af06df865b..b474781a0920 100644
> --- a/drivers/gpu/drm/radeon/radeon_ttm.c
> +++ b/drivers/gpu/drm/radeon/radeon_ttm.c
> @@ -76,7 +76,7 @@ static int radeon_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;
>
> adev memory was set to zero while allocated and adev->mman.bdev used to fetch different mman.
> Do we need explicit initialization to '0'??

No, not really. But I wasn't sure if other drivers initialize their 
structures as well.

So I just kept it to be uniform across drivers to completely rework 
mem_type init at some point.

Regards,
Christian.

>
> Regards,
> Madhav
>
>   		man->available_caching = TTM_PL_MASK_CACHING;
>   		man->default_caching = TTM_PL_FLAG_CACHED;
>   		break;
> @@ -84,7 +84,7 @@ static int radeon_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   		man->func = &ttm_bo_manager_func;
>   		man->available_caching = TTM_PL_MASK_CACHING;
>   		man->default_caching = TTM_PL_FLAG_CACHED;
> -		man->flags = TTM_MEMTYPE_FLAG_MAPPABLE;
> +		man->flags = 0;
>   #if IS_ENABLED(CONFIG_AGP)
>   		if (rdev->flags & RADEON_IS_AGP) {
>   			if (!rdev->ddev->agp) {
> @@ -92,8 +92,6 @@ static int radeon_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   					  (unsigned)type);
>   				return -EINVAL;
>   			}
> -			if (!rdev->ddev->agp->cant_use_aperture)
> -				man->flags = TTM_MEMTYPE_FLAG_MAPPABLE;
>   			man->available_caching = TTM_PL_FLAG_UNCACHED |
>   						 TTM_PL_FLAG_WC;
>   			man->default_caching = TTM_PL_FLAG_WC; @@ -103,8 +101,7 @@ static int radeon_init_mem_type(struct ttm_bo_device *bdev, uint32_t type,
>   	case TTM_PL_VRAM:
>   		/* "On-card" video ram */
>   		man->func = &ttm_bo_manager_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;
> @@ -394,7 +391,6 @@ static int radeon_bo_move(struct ttm_buffer_object *bo, bool evict,
>   
>   static int radeon_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 radeon_device *rdev = radeon_get_rdev(bdev);
>   
>   	mem->bus.addr = NULL;
> @@ -402,8 +398,7 @@ static int radeon_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;
> +
>   	switch (mem->mem_type) {
>   	case TTM_PL_SYSTEM:
>   		/* system memory */
> --
> 2.17.1



More information about the dri-devel mailing list