drm/amdgpu: skip reservation of discovery tmr region in pre-Navi
[linux-2.6-microblaze.git] / drivers / gpu / drm / amd / amdgpu / amdgpu_ttm.c
index ea0199a..93d057f 100644 (file)
@@ -1958,17 +1958,19 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
                return r;
 
        /*
-        * reserve one TMR (64K) memory at the top of VRAM which holds
+        * reserve TMR memory at the top of VRAM which holds
         * IP Discovery data and is protected by PSP.
         */
-       r = amdgpu_bo_create_kernel_at(adev,
-                                      adev->gmc.real_vram_size - DISCOVERY_TMR_SIZE,
-                                      DISCOVERY_TMR_SIZE,
-                                      AMDGPU_GEM_DOMAIN_VRAM,
-                                      &adev->discovery_memory,
-                                      NULL);
-       if (r)
-               return r;
+       if (adev->discovery_tmr_size > 0) {
+               r = amdgpu_bo_create_kernel_at(adev,
+                       adev->gmc.real_vram_size - adev->discovery_tmr_size,
+                       adev->discovery_tmr_size,
+                       AMDGPU_GEM_DOMAIN_VRAM,
+                       &adev->discovery_memory,
+                       NULL);
+               if (r)
+                       return r;
+       }
 
        DRM_INFO("amdgpu: %uM of VRAM memory ready\n",
                 (unsigned) (adev->gmc.real_vram_size / (1024 * 1024)));