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 stolen_reserved reserve-region

Use reserve region helpers for initializing/reserving stolen_reserved 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
272a9c8f 941c5033

+4 -17
+2 -5
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
··· 1041 1041 * Some ASICs need to reserve a region of video memory to avoid access 1042 1042 * from driver 1043 1043 */ 1044 - adev->mman.stolen_reserved_offset = 0; 1045 - adev->mman.stolen_reserved_size = 0; 1046 - 1047 1044 /* 1048 1045 * TODO: 1049 1046 * Currently there is a bug where some memory client outside ··· 1057 1060 */ 1058 1061 #ifdef CONFIG_X86 1059 1062 if (amdgpu_sriov_vf(adev) && hypervisor_is_type(X86_HYPER_MS_HYPERV)) { 1060 - adev->mman.stolen_reserved_offset = 0x500000; 1061 - adev->mman.stolen_reserved_size = 0x200000; 1063 + amdgpu_ttm_init_vram_resv(adev, AMDGPU_RESV_STOLEN_RESERVED, 1064 + 0x500000, 0x200000, false); 1062 1065 } 1063 1066 #endif 1064 1067 break;
+2 -8
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
··· 2214 2214 if (r) 2215 2215 return r; 2216 2216 2217 - r = amdgpu_bo_create_kernel_at(adev, 2218 - adev->mman.stolen_reserved_offset, 2219 - adev->mman.stolen_reserved_size, 2220 - &adev->mman.stolen_reserved_memory, 2221 - NULL); 2217 + r = amdgpu_ttm_mark_vram_reserved(adev, AMDGPU_RESV_STOLEN_RESERVED); 2222 2218 if (r) 2223 2219 return r; 2224 2220 } else { ··· 2338 2342 NULL); 2339 2343 amdgpu_bo_free_kernel(&adev->mman.fw_reserved_memory_extend, NULL, 2340 2344 NULL); 2341 - if (adev->mman.stolen_reserved_size) 2342 - amdgpu_bo_free_kernel(&adev->mman.stolen_reserved_memory, 2343 - NULL, NULL); 2345 + amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_RESERVED); 2344 2346 } 2345 2347 amdgpu_bo_free_kernel(&adev->mman.sdma_access_bo, NULL, 2346 2348 &adev->mman.sdma_access_ptr);
-4
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h
··· 105 105 106 106 bool keep_stolen_vga_memory; 107 107 108 - struct amdgpu_bo *stolen_reserved_memory; 109 - uint64_t stolen_reserved_offset; 110 - uint64_t stolen_reserved_size; 111 - 112 108 /* fw reserved memory */ 113 109 struct amdgpu_bo *fw_reserved_memory; 114 110 struct amdgpu_bo *fw_reserved_memory_extend;