drm/amdgpu: remove SRIOV VF FB location programming
authorZhigang Luo <Zhigang.Luo@amd.com>
Thu, 6 Jul 2023 16:05:40 +0000 (12:05 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 7 Aug 2023 21:13:09 +0000 (17:13 -0400)
For SRIOV VF, FB location is programmed by host driver, no need to
program it in guest driver.

v2: squash in unused variable removal

Signed-off-by: Zhigang Luo <Zhigang.Luo@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/gfxhub_v1_2.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_8.c

index dbdee1a..0834af7 100644 (file)
@@ -402,22 +402,6 @@ static void gfxhub_v1_2_xcc_program_invalidation(struct amdgpu_device *adev,
 static int gfxhub_v1_2_xcc_gart_enable(struct amdgpu_device *adev,
                                       uint32_t xcc_mask)
 {
-       int i;
-
-       /*
-        * MC_VM_FB_LOCATION_BASE/TOP is NULL for VF, because they are
-        * VF copy registers so vbios post doesn't program them, for
-        * SRIOV driver need to program them
-        */
-       if (amdgpu_sriov_vf(adev)) {
-               for_each_inst(i, xcc_mask) {
-                       WREG32_SOC15_RLC(GC, GET_INST(GC, i), regMC_VM_FB_LOCATION_BASE,
-                                    adev->gmc.vram_start >> 24);
-                       WREG32_SOC15_RLC(GC, GET_INST(GC, i), regMC_VM_FB_LOCATION_TOP,
-                                    adev->gmc.vram_end >> 24);
-               }
-       }
-
        /* GART Enable. */
        gfxhub_v1_2_xcc_init_gart_aperture_regs(adev, xcc_mask);
        gfxhub_v1_2_xcc_init_system_aperture_regs(adev, xcc_mask);
index 5e8b493..784c4e0 100644 (file)
@@ -413,18 +413,6 @@ static void mmhub_v1_8_program_invalidation(struct amdgpu_device *adev)
 
 static int mmhub_v1_8_gart_enable(struct amdgpu_device *adev)
 {
-       if (amdgpu_sriov_vf(adev)) {
-               /*
-                * MC_VM_FB_LOCATION_BASE/TOP is NULL for VF, becuase they are
-                * VF copy registers so vbios post doesn't program them, for
-                * SRIOV driver need to program them
-                */
-               WREG32_SOC15(MMHUB, 0, regMC_VM_FB_LOCATION_BASE,
-                            adev->gmc.vram_start >> 24);
-               WREG32_SOC15(MMHUB, 0, regMC_VM_FB_LOCATION_TOP,
-                            adev->gmc.vram_end >> 24);
-       }
-
        /* GART Enable. */
        mmhub_v1_8_init_gart_aperture_regs(adev);
        mmhub_v1_8_init_system_aperture_regs(adev);