OSDN Git Service

drm/amd/powerplay: set dpm_enabled flag but don't enable vcn dpm
authorHuang Rui <ray.huang@amd.com>
Thu, 30 May 2019 04:18:01 +0000 (23:18 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 21 Jun 2019 23:59:27 +0000 (18:59 -0500)
This patch sets dpm_enabled flag but don't enable vcn dpm, because vcn dpm
doesn't work so far and we needs to enable the sysfs interfaces.

Signed-off-by: Huang Rui <ray.huang@amd.com>
Acked-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
drivers/gpu/drm/amd/powerplay/amdgpu_smu.c

index 6a74f54..7650183 100644 (file)
@@ -249,7 +249,7 @@ static void amdgpu_vcn_idle_work_handler(struct work_struct *work)
 
        if (fences == 0) {
                amdgpu_gfx_off_ctrl(adev, true);
-               if (adev->pm.dpm_enabled)
+               if (adev->asic_type != CHIP_NAVI10 && adev->pm.dpm_enabled)
                        amdgpu_dpm_enable_uvd(adev, false);
                else
                        amdgpu_device_ip_set_powergating_state(adev, AMD_IP_BLOCK_TYPE_VCN,
@@ -266,7 +266,7 @@ void amdgpu_vcn_ring_begin_use(struct amdgpu_ring *ring)
 
        if (set_clocks) {
                amdgpu_gfx_off_ctrl(adev, false);
-               if (adev->pm.dpm_enabled)
+               if (adev->asic_type != CHIP_NAVI10 && adev->pm.dpm_enabled)
                        amdgpu_dpm_enable_uvd(adev, true);
                else
                        amdgpu_device_ip_set_powergating_state(adev, AMD_IP_BLOCK_TYPE_VCN,
index 71f93f9..9e0b439 100644 (file)
@@ -865,10 +865,7 @@ static int smu_hw_init(void *handle)
        if (!smu->pm_enabled)
                adev->pm.dpm_enabled = false;
        else
-               adev->pm.dpm_enabled = true;
-       /* TODO: will set dpm_enabled flag while VCN and DAL DPM is workable */
-       if (adev->asic_type != CHIP_NAVI10)
-               adev->pm.dpm_enabled = true;
+               adev->pm.dpm_enabled = true;    /* TODO: will set dpm_enabled flag while VCN and DAL DPM is workable */
 
        pr_info("SMU is initialized successfully!\n");