mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 23:22:31 +02:00
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>
This commit is contained in:
parent
941c50330e
commit
272a9c8f6f
|
|
@ -1041,9 +1041,6 @@ void amdgpu_gmc_get_vbios_allocations(struct amdgpu_device *adev)
|
|||
* Some ASICs need to reserve a region of video memory to avoid access
|
||||
* from driver
|
||||
*/
|
||||
adev->mman.stolen_reserved_offset = 0;
|
||||
adev->mman.stolen_reserved_size = 0;
|
||||
|
||||
/*
|
||||
* TODO:
|
||||
* Currently there is a bug where some memory client outside
|
||||
|
|
@ -1060,8 +1057,8 @@ void amdgpu_gmc_get_vbios_allocations(struct amdgpu_device *adev)
|
|||
*/
|
||||
#ifdef CONFIG_X86
|
||||
if (amdgpu_sriov_vf(adev) && hypervisor_is_type(X86_HYPER_MS_HYPERV)) {
|
||||
adev->mman.stolen_reserved_offset = 0x500000;
|
||||
adev->mman.stolen_reserved_size = 0x200000;
|
||||
amdgpu_ttm_init_vram_resv(adev, AMDGPU_RESV_STOLEN_RESERVED,
|
||||
0x500000, 0x200000, false);
|
||||
}
|
||||
#endif
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -2214,11 +2214,7 @@ int amdgpu_ttm_init(struct amdgpu_device *adev)
|
|||
if (r)
|
||||
return r;
|
||||
|
||||
r = amdgpu_bo_create_kernel_at(adev,
|
||||
adev->mman.stolen_reserved_offset,
|
||||
adev->mman.stolen_reserved_size,
|
||||
&adev->mman.stolen_reserved_memory,
|
||||
NULL);
|
||||
r = amdgpu_ttm_mark_vram_reserved(adev, AMDGPU_RESV_STOLEN_RESERVED);
|
||||
if (r)
|
||||
return r;
|
||||
} else {
|
||||
|
|
@ -2342,9 +2338,7 @@ void amdgpu_ttm_fini(struct amdgpu_device *adev)
|
|||
NULL);
|
||||
amdgpu_bo_free_kernel(&adev->mman.fw_reserved_memory_extend, NULL,
|
||||
NULL);
|
||||
if (adev->mman.stolen_reserved_size)
|
||||
amdgpu_bo_free_kernel(&adev->mman.stolen_reserved_memory,
|
||||
NULL, NULL);
|
||||
amdgpu_ttm_unmark_vram_reserved(adev, AMDGPU_RESV_STOLEN_RESERVED);
|
||||
}
|
||||
amdgpu_bo_free_kernel(&adev->mman.sdma_access_bo, NULL,
|
||||
&adev->mman.sdma_access_ptr);
|
||||
|
|
|
|||
|
|
@ -105,10 +105,6 @@ struct amdgpu_mman {
|
|||
|
||||
bool keep_stolen_vga_memory;
|
||||
|
||||
struct amdgpu_bo *stolen_reserved_memory;
|
||||
uint64_t stolen_reserved_offset;
|
||||
uint64_t stolen_reserved_size;
|
||||
|
||||
/* fw reserved memory */
|
||||
struct amdgpu_bo *fw_reserved_memory;
|
||||
struct amdgpu_bo *fw_reserved_memory_extend;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user