[PATCH 6/6] drm/amdgpu: change gartsize default to 256MB

Andy Furniss adf.lists at gmail.com
Tue Jul 25 15:27:00 UTC 2017


Bit late, but this causes a startup fail for me with r9 285 , nothing 
logged, just a blank screen when the driver loads.

Heads of both amd-staging-4.11 and drm-next-4.14-wip both failing.

Deucher, Alexander wrote:
>> -----Original Message-----
>> From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf
>> Of Christian König
>> Sent: Friday, July 07, 2017 7:53 AM
>> To: amd-gfx at lists.freedesktop.org
>> Subject: [PATCH 6/6] drm/amdgpu: change gartsize default to 256MB
>>
>> From: Christian König <christian.koenig at amd.com>
>>
>> Limit the default GART size and save a lot of VRAM.
>>
>> Signed-off-by: Christian König <christian.koenig at amd.com>
> 
> Patch 1-4, 6:
> Reviewed-by: Alex Deucher <alexander.deucher at amd.com>
> 
>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu.h        |  2 +-
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 12 +++++-------
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c    |  6 +++---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c   |  9 +--------
>>   4 files changed, 10 insertions(+), 19 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
>> index 94bbf71..2421b6a 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
>> @@ -76,7 +76,7 @@
>>    */
>>   extern int amdgpu_modeset;
>>   extern int amdgpu_vram_limit;
>> -extern int amdgpu_gart_size;
>> +extern unsigned amdgpu_gart_size;
>>   extern int amdgpu_gtt_size;
>>   extern int amdgpu_moverate;
>>   extern int amdgpu_benchmarking;
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> index 8ef7e5e..7a90dec 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
>> @@ -1128,13 +1128,11 @@ static void amdgpu_check_arguments(struct
>> amdgpu_device *adev)
>>   		amdgpu_sched_jobs =
>> roundup_pow_of_two(amdgpu_sched_jobs);
>>   	}
>>
>> -	if (amdgpu_gart_size != -1) {
>> -		/* gtt size must be greater or equal to 32M */
>> -		if (amdgpu_gart_size < 32) {
>> -			dev_warn(adev->dev, "gart size (%d) too small\n",
>> -				 amdgpu_gart_size);
>> -			amdgpu_gart_size = -1;
>> -		}
>> +	if (amdgpu_gart_size < 32) {
>> +		/* gart size must be greater or equal to 32M */
>> +		dev_warn(adev->dev, "gart size (%d) too small\n",
>> +			 amdgpu_gart_size);
>> +		amdgpu_gart_size = 32;
>>   	}
>>
>>   	if (amdgpu_gtt_size != -1 && amdgpu_gtt_size < 32) {
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> index b7c6cee..559e092 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c
>> @@ -74,7 +74,7 @@
>>   #define KMS_DRIVER_PATCHLEVEL	0
>>
>>   int amdgpu_vram_limit = 0;
>> -int amdgpu_gart_size = -1; /* auto */
>> +unsigned amdgpu_gart_size = 256;
>>   int amdgpu_gtt_size = -1; /* auto */
>>   int amdgpu_moverate = -1; /* auto */
>>   int amdgpu_benchmarking = 0;
>> @@ -122,8 +122,8 @@ int amdgpu_lbpw = -1;
>>   MODULE_PARM_DESC(vramlimit, "Restrict VRAM for testing, in
>> megabytes");
>>   module_param_named(vramlimit, amdgpu_vram_limit, int, 0600);
>>
>> -MODULE_PARM_DESC(gartsize, "Size of PCIE/IGP gart to setup in
>> megabytes (32, 64, etc., -1 = auto)");
>> -module_param_named(gartsize, amdgpu_gart_size, int, 0600);
>> +MODULE_PARM_DESC(gartsize, "Size of PCIE/IGP gart to setup in
>> megabytes (32, 64, etc.)");
>> +module_param_named(gartsize, amdgpu_gart_size, uint, 0600);
>>
>>   MODULE_PARM_DESC(gttsize, "Size of the GTT domain in megabytes (-1 =
>> auto)");
>>   module_param_named(gttsize, amdgpu_gtt_size, int, 0600);
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
>> index cb0814a..124b237 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
>> @@ -62,14 +62,7 @@
>>    */
>>   void amdgpu_gart_set_defaults(struct amdgpu_device *adev)
>>   {
>> -	/* unless the user had overridden it, set the gart
>> -	 * size equal to the 1024 or vram, whichever is larger.
>> -	 */
>> -	if (amdgpu_gart_size == -1)
>> -		adev->mc.gart_size =
>> max((AMDGPU_DEFAULT_GTT_SIZE_MB << 20),
>> -					adev->mc.mc_vram_size);
>> -	else
>> -		adev->mc.gart_size = (uint64_t)amdgpu_gart_size << 20;
>> +	adev->mc.gart_size = (uint64_t)amdgpu_gart_size << 20;
>>   }
>>
>>   /**
>> --
>> 2.7.4
>>
>> _______________________________________________
>> amd-gfx mailing list
>> amd-gfx at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
> _______________________________________________
> 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