[PATCH] drm/amdgpu: fix AGP location with VRAM at 0x0

Huang Rui ray.huang at amd.com
Tue Oct 9 10:47:34 UTC 2018


On Thu, Oct 04, 2018 at 11:02:10AM +0200, Christian König wrote:
> That also simplifies handling quite a bit.
> 
> Signed-off-by: Christian König <christian.koenig at amd.com>

Reviewed-by: Huang Rui <ray.huang at amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c | 7 ++-----
>  1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
> index 9a5b252784a1..999e15945355 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
> @@ -200,16 +200,13 @@ void amdgpu_gmc_agp_location(struct amdgpu_device *adev, struct amdgpu_gmc *mc)
>  	}
>  
>  	if (size_bf > size_af) {
> -		mc->agp_start = mc->fb_start > mc->gart_start ?
> -			mc->gart_end + 1 : 0;
> +		mc->agp_start = (mc->fb_start - size_bf) & sixteen_gb_mask;
>  		mc->agp_size = size_bf;
>  	} else {
> -		mc->agp_start = (mc->fb_start > mc->gart_start ?
> -			mc->fb_end : mc->gart_end) + 1,
> +		mc->agp_start = ALIGN(mc->fb_end + 1, sixteen_gb);
>  		mc->agp_size = size_af;
>  	}
>  
> -	mc->agp_start = ALIGN(mc->agp_start, sixteen_gb);
>  	mc->agp_end = mc->agp_start + mc->agp_size - 1;
>  	dev_info(adev->dev, "AGP: %lluM 0x%016llX - 0x%016llX\n",
>  			mc->agp_size >> 20, mc->agp_start, mc->agp_end);
> -- 
> 2.14.1
> 
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list