Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

drm/amdgpu: Add extended stolen vga reserve-region

Use reserve region helpers for initializing/reserving extended stolen
vga region.

Signed-off-by: Lijo Lazar <lijo.lazar@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Lijo Lazar and committed by
Alex Deucher
941c5033 9bb16dab

+6 -12
+3 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
··· 1101 1101 if (size > AMDGPU_VBIOS_VGA_ALLOCATION) { 1102 1102 amdgpu_ttm_init_vram_resv(adev, AMDGPU_RESV_STOLEN_VGA, 1103 1103 0, AMDGPU_VBIOS_VGA_ALLOCATION, false); 1104 - adev->mman.stolen_extended_size = size - AMDGPU_VBIOS_VGA_ALLOCATION; 1104 + amdgpu_ttm_init_vram_resv(adev, AMDGPU_RESV_STOLEN_EXTENDED, 1105 + AMDGPU_VBIOS_VGA_ALLOCATION, 1106 + size - AMDGPU_VBIOS_VGA_ALLOCATION, false); 1105 1107 } else { 1106 1108 amdgpu_ttm_init_vram_resv(adev, AMDGPU_RESV_STOLEN_VGA, 1107 1109 0, size, false); 1108 - adev->mman.stolen_extended_size = 0; 1109 1110 } 1110 1111 } 1111 1112
+2 -7
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
··· 2210 2210 if (r) 2211 2211 return r; 2212 2212 2213 - r = amdgpu_bo_create_kernel_at(adev, 2214 - adev->mman.resv_region[AMDGPU_RESV_STOLEN_VGA].size, 2215 - adev->mman.stolen_extended_size, 2216 - &adev->mman.stolen_extended_memory, 2217 - NULL); 2218 - 2213 + r = amdgpu_ttm_mark_vram_reserved(adev, AMDGPU_RESV_STOLEN_EXTENDED); 2219 2214 if (r) 2220 2215 return r; 2221 2216 ··· 2336 2341 /* return the stolen vga memory back to VRAM */ 2337 2342 if (!adev->gmc.is_app_apu) { 2338 2343 amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_VGA); 2339 - amdgpu_bo_free_kernel(&adev->mman.stolen_extended_memory, NULL, NULL); 2344 + amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_EXTENDED); 2340 2345 /* return the FW reserved memory back to VRAM */ 2341 2346 amdgpu_bo_free_kernel(&adev->mman.fw_reserved_memory, NULL, 2342 2347 NULL);
-2
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
··· 103 103 struct amdgpu_gtt_mgr gtt_mgr; 104 104 struct ttm_resource_manager preempt_mgr; 105 105 106 - uint64_t stolen_extended_size; 107 - struct amdgpu_bo *stolen_extended_memory; 108 106 bool keep_stolen_vga_memory; 109 107 110 108 struct amdgpu_bo *stolen_reserved_memory;
+1 -1
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
··· 11200 11200 /* return the stolen vga memory back to VRAM */ 11201 11201 if (!adev->mman.keep_stolen_vga_memory) 11202 11202 amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_VGA); 11203 - amdgpu_bo_free_kernel(&adev->mman.stolen_extended_memory, NULL, NULL); 11203 + amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_EXTENDED); 11204 11204 } 11205 11205 11206 11206 /*