OSDN Git Service

drm/amdgpu/gmc8: switch to using amdgpu_gmc_get_vbios_allocations
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 28 Jul 2020 22:29:39 +0000 (18:29 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 4 Aug 2020 21:29:29 +0000 (17:29 -0400)
The new helper centralizes the logic in one place.

Reviewed-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c

index 8e3763e..9ab65ca 100644 (file)
@@ -1094,9 +1094,7 @@ static unsigned gmc_v8_0_get_vbios_fb_size(struct amdgpu_device *adev)
                        REG_GET_FIELD(viewport, VIEWPORT_SIZE, VIEWPORT_WIDTH) *
                        4);
        }
-       /* return 0 if the pre-OS buffer uses up most of vram */
-       if ((adev->gmc.real_vram_size - size) < (8 * 1024 * 1024))
-               return 0;
+
        return size;
 }
 
@@ -1160,7 +1158,7 @@ static int gmc_v8_0_sw_init(void *handle)
        if (r)
                return r;
 
-       adev->gmc.stolen_vga_size = gmc_v8_0_get_vbios_fb_size(adev);
+       amdgpu_gmc_get_vbios_allocations(adev);
 
        /* Memory manager */
        r = amdgpu_bo_init(adev);
@@ -1739,7 +1737,8 @@ static const struct amdgpu_gmc_funcs gmc_v8_0_gmc_funcs = {
        .emit_pasid_mapping = gmc_v8_0_emit_pasid_mapping,
        .set_prt = gmc_v8_0_set_prt,
        .get_vm_pde = gmc_v8_0_get_vm_pde,
-       .get_vm_pte = gmc_v8_0_get_vm_pte
+       .get_vm_pte = gmc_v8_0_get_vm_pte,
+       .get_vbios_fb_size = gmc_v8_0_get_vbios_fb_size,
 };
 
 static const struct amdgpu_irq_src_funcs gmc_v8_0_irq_funcs = {