From 11fd00ee6169db3937301bc1bd7ee0c8880fc75b Mon Sep 17 00:00:00 2001 From: Harish Kasiviswanathan Date: Thu, 31 Mar 2016 16:13:28 -0400 Subject: [PATCH] drm/amdkgd: Temporary fix for HBM width The current computation for vram width is outdated. For permanent solution this has to be fixed. Change-Id: I1ec2895fae698def72d5047961bdf041f92f8194 Signed-off-by: Harish Kasiviswanathan --- drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c | 5 +++++ include/uapi/drm/amdgpu_drm.h | 2 ++ 2 files changed, 7 insertions(+) mode change 100755 => 100644 include/uapi/drm/amdgpu_drm.h diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c index 592a20fba53f6..a0cc976ab2066 100644 --- a/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c @@ -459,6 +459,11 @@ static int gmc_v8_0_mc_init(struct amdgpu_device *adev) break; } adev->mc.vram_width = numchan * chansize; + /* FIXME: The above calculation is outdated. + * For HBM provide a temporary fix */ + if (adev->mc.vram_type == AMDGPU_VRAM_TYPE_HBM) + adev->mc.vram_width = AMDGPU_VRAM_TYPE_HBM_WIDTH; + /* Could aper size report 0 ? */ adev->mc.aper_base = pci_resource_start(adev->pdev, 0); adev->mc.aper_size = pci_resource_len(adev->pdev, 0); diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h old mode 100755 new mode 100644 index 3873b814188e6..57c89a829c885 --- a/include/uapi/drm/amdgpu_drm.h +++ b/include/uapi/drm/amdgpu_drm.h @@ -607,6 +607,8 @@ struct drm_amdgpu_info_firmware { #define AMDGPU_VRAM_TYPE_HBM 6 #define AMDGPU_VRAM_TYPE_DDR3 7 +#define AMDGPU_VRAM_TYPE_HBM_WIDTH 4096 + struct drm_amdgpu_info_device { /** PCI Device ID */ uint32_t device_id;