[PATCH] drm/amdgpu: calling address translation functions to simplify codes
Christian König
ckoenig.leichtzumerken at gmail.com
Tue Sep 5 05:22:28 UTC 2023
Am 04.09.23 um 10:18 schrieb Yifan Zhang:
> Use amdgpu_gmc_vram_pa to simplify codes.
>
> Signed-off-by: Yifan Zhang <yifan1.zhang at amd.com>
Reviewed-by: Christian König <christian.koenig at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/gfxhub_v11_5_0.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c | 3 +--
> drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c | 3 +--
> 8 files changed, 8 insertions(+), 16 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfxhub_v11_5_0.c b/drivers/gpu/drm/amd/amdgpu/gfxhub_v11_5_0.c
> index 2eb3386ae7ac..bcb6ba03cead 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfxhub_v11_5_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfxhub_v11_5_0.c
> @@ -168,8 +168,7 @@ static void gfxhub_v11_5_0_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start
> - + adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c b/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c
> index e1c76c070ba9..89ff7910cb0f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c
> @@ -164,8 +164,7 @@ static void gfxhub_v3_0_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start
> - + adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c b/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c
> index 07f369c7a1ed..be1da5927910 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c
> @@ -169,8 +169,7 @@ static void gfxhub_v3_0_3_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start
> - + adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(GC, 0, regGCMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
> index dcbba981462e..671e288c7575 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
> @@ -500,8 +500,7 @@ static void gmc_v11_0_get_vm_pde(struct amdgpu_device *adev, int level,
> uint64_t *addr, uint64_t *flags)
> {
> if (!(*flags & AMDGPU_PDE_PTE) && !(*flags & AMDGPU_PTE_SYSTEM))
> - *addr = adev->vm_manager.vram_base_offset + *addr -
> - adev->gmc.vram_start;
> + *addr = amdgpu_gmc_vram_mc2pa(adev, *addr);
> BUG_ON(*addr & 0xFFFF00000000003FULL);
>
> if (!adev->gmc.translate_further)
> diff --git a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c
> index 441379e91cfa..7c9ab5491067 100644
> --- a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c
> @@ -189,8 +189,7 @@ static void mmhub_v3_0_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start +
> - adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c
> index 12c7f4b46ea9..db79e6f92441 100644
> --- a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c
> +++ b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c
> @@ -188,8 +188,7 @@ static void mmhub_v3_0_1_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start +
> - adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c
> index 5dadc85abf7e..d1fc9dce7151 100644
> --- a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c
> +++ b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c
> @@ -181,8 +181,7 @@ static void mmhub_v3_0_2_init_system_aperture_regs(struct amdgpu_device *adev)
> }
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start +
> - adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
> diff --git a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
> index ec1fb329524d..8194ee2b96c4 100644
> --- a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
> +++ b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
> @@ -180,8 +180,7 @@ static void mmhub_v3_3_init_system_aperture_regs(struct amdgpu_device *adev)
> max(adev->gmc.fb_end, adev->gmc.agp_end) >> 18);
>
> /* Set default page address. */
> - value = adev->mem_scratch.gpu_addr - adev->gmc.vram_start +
> - adev->vm_manager.vram_base_offset;
> + value = amdgpu_gmc_vram_mc2pa(adev, adev->mem_scratch.gpu_addr);
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_LSB,
> (u32)(value >> 12));
> WREG32_SOC15(MMHUB, 0, regMMMC_VM_SYSTEM_APERTURE_DEFAULT_ADDR_MSB,
More information about the amd-gfx
mailing list