diff options
| author | Likun Gao <[email protected]> | 2019-01-25 09:45:24 +0000 |
|---|---|---|
| committer | Alex Deucher <[email protected]> | 2019-03-19 20:04:01 +0000 |
| commit | 96026ce0199c4c0c3d19dd0673dcbaf55e2897d3 (patch) | |
| tree | 444ebad524697e86200b7044c85d2039f5555915 /drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | |
| parent | drm/amd/powerplay: implement fan1_enable hwmon interface for SMU11 (v2) (diff) | |
| download | kernel-96026ce0199c4c0c3d19dd0673dcbaf55e2897d3.tar.gz kernel-96026ce0199c4c0c3d19dd0673dcbaf55e2897d3.zip | |
drm/amd/powerplay: set fan target interface for hwmon
Add fan1_target set interface to set fan speed for hwmon.
Signed-off-by: Likun Gao <[email protected]>
Reviewed-by: Kevin Wang <[email protected]>
Reviewed-by: Huang Rui <[email protected]>
Reviewed-by: Alex Deucher <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c index 3875a62352de..d3efba85683f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_pm.c @@ -1606,7 +1606,11 @@ static ssize_t amdgpu_hwmon_set_fan1_target(struct device *dev, u32 value; u32 pwm_mode; - pwm_mode = amdgpu_dpm_get_fan_control_mode(adev); + if (is_support_sw_smu(adev)) + pwm_mode = smu_get_fan_control_mode(&adev->smu); + else + pwm_mode = amdgpu_dpm_get_fan_control_mode(adev); + if (pwm_mode != AMD_FAN_CTRL_MANUAL) return -ENODATA; @@ -1619,7 +1623,11 @@ static ssize_t amdgpu_hwmon_set_fan1_target(struct device *dev, if (err) return err; - if (adev->powerplay.pp_funcs->set_fan_speed_rpm) { + if (is_support_sw_smu(adev)) { + err = smu_set_fan_speed_rpm(&adev->smu, value); + if (err) + return err; + } else if (adev->powerplay.pp_funcs->set_fan_speed_rpm) { err = amdgpu_dpm_set_fan_speed_rpm(adev, value); if (err) return err; |
