Needed to avoid a hardware issue.

Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
index e1f47f9c1881..6947b598e9b2 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
@@ -740,6 +740,12 @@ static int gmc_v11_0_mc_init(struct amdgpu_device *adev)
        else
                adev->gmc.gart_size = (u64)amdgpu_gart_size << 20;
 
+       /* force GART to avoid a hw issue in GC11 */
+       if (adev->flags & AMD_IS_APU)
+               adev->gmc.gart_placement = AMDGPU_GART_PLACEMENT_LOW;
+       else
+               adev->gmc.gart_placement = AMDGPU_GART_PLACEMENT_HIGH;
+
        gmc_v11_0_vram_gtt_location(adev, &adev->gmc);
 
        return 0;
-- 
2.41.0

Reply via email to