aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
diff options
context:
space:
mode:
authorEvan Quan <evan.quan@amd.com>2018-10-17 04:36:02 -0400
committerAlex Deucher <alexander.deucher@amd.com>2018-10-22 15:40:30 -0400
commit241dbbb1fb21bfff0c46c6873cee5c7923d05378 (patch)
tree97863a380f7b8aed1735d377fde567bcccfa0bf8 /drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
parentf2bfc71aee75feff33ca659322b72ffeed5a243d (diff)
drm/amd/powerplay: error out when force clock level under auto dpm mode V2
Forcing clock level is supported under manual dpm mode only. Error out when trying to set under manual mode. Instead of doing nothing and reporting success. V2: update for mclk/pcie clock level settings also Signed-off-by: Evan Quan <evan.quan@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
index 94055a485e01..59cc678de8c1 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c
@@ -704,7 +704,10 @@ static ssize_t amdgpu_set_pp_dpm_sclk(struct device *dev,
704 return ret; 704 return ret;
705 705
706 if (adev->powerplay.pp_funcs->force_clock_level) 706 if (adev->powerplay.pp_funcs->force_clock_level)
707 amdgpu_dpm_force_clock_level(adev, PP_SCLK, mask); 707 ret = amdgpu_dpm_force_clock_level(adev, PP_SCLK, mask);
708
709 if (ret)
710 return -EINVAL;
708 711
709 return count; 712 return count;
710} 713}
@@ -737,7 +740,10 @@ static ssize_t amdgpu_set_pp_dpm_mclk(struct device *dev,
737 return ret; 740 return ret;
738 741
739 if (adev->powerplay.pp_funcs->force_clock_level) 742 if (adev->powerplay.pp_funcs->force_clock_level)
740 amdgpu_dpm_force_clock_level(adev, PP_MCLK, mask); 743 ret = amdgpu_dpm_force_clock_level(adev, PP_MCLK, mask);
744
745 if (ret)
746 return -EINVAL;
741 747
742 return count; 748 return count;
743} 749}
@@ -770,7 +776,10 @@ static ssize_t amdgpu_set_pp_dpm_pcie(struct device *dev,
770 return ret; 776 return ret;
771 777
772 if (adev->powerplay.pp_funcs->force_clock_level) 778 if (adev->powerplay.pp_funcs->force_clock_level)
773 amdgpu_dpm_force_clock_level(adev, PP_PCIE, mask); 779 ret = amdgpu_dpm_force_clock_level(adev, PP_PCIE, mask);
780
781 if (ret)
782 return -EINVAL;
774 783
775 return count; 784 return count;
776} 785}