smu_hw_init() and smu_hw_fini() call smu_dpm_set_vpe_enable() for
APUs as part of startup and teardown.  These calls however are
not necessary because vpe_hw_init()/vpe_hw_fini() will call at
init/fini:

```
vpe_hw_init() / vpe_hw_fini()
  amdgpu_device_ip_set_powergating_state()
    vpe_set_powergating_state()
      amdgpu_dpm_enable_vpe()
        amdgpu_dpm_set_powergating_by_smu()
          smu_dpm_set_power_gate()
            smu_dpm_set_vpe_enable()
```

Drop the extra calls.

Signed-off-by: Mario Limonciello (AMD) <supe...@kernel.org>
---
 drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c 
b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
index b47cb4a5f4887..49e6a2266136b 100644
--- a/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
+++ b/drivers/gpu/drm/amd/pm/swsmu/amdgpu_smu.c
@@ -1896,7 +1896,6 @@ static int smu_hw_init(struct amdgpu_ip_block *ip_block)
                for (i = 0; i < adev->vcn.num_vcn_inst; i++)
                        smu_dpm_set_vcn_enable(smu, true, i);
                smu_dpm_set_jpeg_enable(smu, true);
-               smu_dpm_set_vpe_enable(smu, true);
                smu_dpm_set_umsch_mm_enable(smu, true);
                smu_set_mall_enable(smu);
                smu_set_gfx_cgpg(smu, true);
@@ -2104,7 +2103,6 @@ static int smu_hw_fini(struct amdgpu_ip_block *ip_block)
        }
        smu_dpm_set_jpeg_enable(smu, false);
        adev->jpeg.cur_state = AMD_PG_STATE_GATE;
-       smu_dpm_set_vpe_enable(smu, false);
        smu_dpm_set_umsch_mm_enable(smu, false);
 
        if (!smu->pm_enabled)
-- 
2.43.0

Reply via email to