drm/amdgpu/gmc9: get vram width from atom for Raven

Get it from the system info table.

Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
Alex Deucher 2017-07-05 15:37:35 -04:00
parent 21f6bcb6d4
commit 8d6a5230e1
1 changed files with 39 additions and 35 deletions

View File

@ -23,6 +23,7 @@
#include <linux/firmware.h> #include <linux/firmware.h>
#include "amdgpu.h" #include "amdgpu.h"
#include "gmc_v9_0.h" #include "gmc_v9_0.h"
#include "amdgpu_atomfirmware.h"
#include "vega10/soc15ip.h" #include "vega10/soc15ip.h"
#include "vega10/HDP/hdp_4_0_offset.h" #include "vega10/HDP/hdp_4_0_offset.h"
@ -442,6 +443,8 @@ static int gmc_v9_0_mc_init(struct amdgpu_device *adev)
u32 tmp; u32 tmp;
int chansize, numchan; int chansize, numchan;
adev->mc.vram_width = amdgpu_atomfirmware_get_vram_width(adev);
if (!adev->mc.vram_width) {
/* hbm memory channel size */ /* hbm memory channel size */
chansize = 128; chansize = 128;
@ -479,6 +482,7 @@ static int gmc_v9_0_mc_init(struct amdgpu_device *adev)
break; break;
} }
adev->mc.vram_width = numchan * chansize; adev->mc.vram_width = numchan * chansize;
}
/* Could aper size report 0 ? */ /* Could aper size report 0 ? */
adev->mc.aper_base = pci_resource_start(adev->pdev, 0); adev->mc.aper_base = pci_resource_start(adev->pdev, 0);