mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-30 06:10:56 +00:00
drm/amdgpu: use physical_node_id to calculate aper_base
Similar as xgmi connected gpu nodes, physical_node_id * segment_size should be used to calculate the offset of aper_base. The asic type check is redundant. once physical_node_id and segment_size are initialized, it should be count on. Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com> Reviewed-by: Kevin Wang <kevin1.wang@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
063a1e8341
commit
3de60d961c
1 changed files with 6 additions and 12 deletions
|
@ -1263,19 +1263,13 @@ static int gmc_v9_0_mc_init(struct amdgpu_device *adev)
|
|||
*/
|
||||
|
||||
/* check whether both host-gpu and gpu-gpu xgmi links exist */
|
||||
if (adev->gmc.xgmi.supported && adev->gmc.xgmi.connected_to_cpu &&
|
||||
adev->asic_type == CHIP_ALDEBARAN) {
|
||||
|
||||
adev->gmc.aper_base = adev->gfxhub.funcs->get_mc_fb_offset(adev) +
|
||||
adev->gmc.xgmi.node_id *
|
||||
if ((adev->flags & AMD_IS_APU) ||
|
||||
(adev->gmc.xgmi.supported &&
|
||||
adev->gmc.xgmi.connected_to_cpu)) {
|
||||
adev->gmc.aper_base =
|
||||
adev->gfxhub.funcs->get_mc_fb_offset(adev) +
|
||||
adev->gmc.xgmi.physical_node_id *
|
||||
adev->gmc.xgmi.node_segment_size;
|
||||
|
||||
adev->gmc.aper_size = adev->gmc.real_vram_size;
|
||||
|
||||
}
|
||||
|
||||
if (adev->flags & AMD_IS_APU) {
|
||||
adev->gmc.aper_base = adev->gfxhub.funcs->get_mc_fb_offset(adev);
|
||||
adev->gmc.aper_size = adev->gmc.real_vram_size;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue